类的定义python支持多重继承,在类名后面的小括号中,可以列出多个类名,以逗号分割。__init__方法在类的实例创建后被立即调用,注意与c++中构造函数不一样,因为对象在调用__init__时已经被构造出来,__init__方法不返回值,__init__方法不是必须要定义的。每个类方法的第一个参...
分类:
编程语言 时间:
2014-07-19 21:11:21
阅读次数:
230
3.1 面向对象概念
3.2 类与对象的关系
3.3 封装
3.4 构造函数
3.5 this关键字
3.6 static关键字
3.7 单例设计模式
3.1 面向对象概念
3.1.1 理解面向对象
3.1.2 面向对象的特点
3.1.1 理解面向对象
面向对象是相对面向过程而言
面向对象和面向过程都是一种思想
面向过程
? 强调的是功能行为
面...
分类:
其他好文 时间:
2014-07-18 21:29:24
阅读次数:
202
1 class Widget{ 2 3 Widget(); //默认构造函数 4 5 Widget(const Widget& rhs); //复制构造函数 6 7 Widget& operator= (const Widget& rhs);//...
分类:
其他好文 时间:
2014-07-18 20:30:16
阅读次数:
226
请说明下列代码的输出,并解释原因。#includeclass A{public: virtual ~A();};A::~A(){ printf("delete A\n");}class B : public A{public: ~B();};B::~B(){ printf("...
分类:
编程语言 时间:
2014-07-18 20:03:10
阅读次数:
281
为了访问公有派生类的特定成员,可以通过讲基类指针显示转换为派生类指针。也可以将基类的非静态成员函数定义为虚函数(在函数前加上virtual) 1 #include 2 using namespace std; 3 4 class base{ 5 public: 6 /*virtual*/ ...
分类:
其他好文 时间:
2014-07-17 18:04:41
阅读次数:
300
动态存储类
StrVec Class Design
StrVec Class Definition
class StrVec
{
public:
//构造函数
StrVec():elements(nullptr), first_free(nullptr), cap(nullptr){}
//用initializer_list初始化参数列表
StrVe...
分类:
其他好文 时间:
2014-07-17 10:22:21
阅读次数:
286
VC和gcc不同,不能保证静态变量的线程安全性。这就给我们的程序带来了很大的安全隐患和诸多不便。这一点应该引起我们的重视!尤其是在构造函数耗时比较长的时候,很可能给程序带来意想不到的结果。本文从测试代码开始,逐步分析原理,最后给出解决方案。
多线程状态下,VC不能保证在使用函数的静态变量的时候,它的构造函数已经被执行完毕,下面是一段测试代码:
class TestStatic...
分类:
编程语言 时间:
2014-07-16 16:20:55
阅读次数:
261
x:Class:用来创建一个partial的class, 比如默认生成的x:Class="MyTest.MainWindow", 会自动生成一个MainWindow的partial class,同时在project自动创建的MainWindow.cs partial class构造函数中,会调用一个...
分类:
其他好文 时间:
2014-07-16 16:06:36
阅读次数:
170
/** * Created by 刘朋程 博客园 on 2014-07-15. */ class fu { int num = 4 ; //定义父类的变量num = 4 fu() //定义父类的构造函数 ...
分类:
其他好文 时间:
2014-07-16 13:51:11
阅读次数:
233
在
C++ 中,赋值和拷贝是不同的,
1)拷贝构造函数是对未初始化的内存进行初始化操作
2)而赋值是对现有的已经初始化的对象进行操作。(这里我对“已经初始化”的理解是已经调用了构造函数,并且构造函数体可以未执行,只要调用到即可),赋值函数应该给所有数据成员都初始化。
3)重点:包含动态分配成员的类
应提供拷贝构造函数,并重载"="赋值操作符。...
分类:
其他好文 时间:
2014-07-16 13:42:16
阅读次数:
186