读书人

c++ 构造函数、指针 疑义汇总贴

发布时间: 2012-09-12 09:21:30 作者: rapoo

c++ 构造函数、指针 疑问汇总贴
Q0:关于构造函数的细节:
先说默认构造函数(default ctor)的 产生时机:a类继承b类,a类包含了b类 。两种情况
再说拷贝构造函数(copy ctor)的产生时机,类作为函数参数,类作为return 的值返回,还有我们显式调用,

以上说法全不全?

还有个 话题:
struct和class的静态构造函数的触发规则是不同,
对于普通的c++学习者,了解这个细节不知道有没有必要?

Q1:类指针的行为 和普通指针的行为 有什么异同?


Q2:
static变量 和 引用变量 声明后,都不会生成额外的汇编代码。
后者不会分配新的内存空间。

求验证想法啊

Q3:
this指针掌握:static成员函数没有this指针,重载的操作符函数要善于利用this指针实现链式操作就够了。

以上两点就概括this指针的常见行为全不全?








[解决办法]
楼主结贴虑有点低,不知道该不该回复。
楼主这些话从哪儿看来的,求出处。

Q0:关于构造函数的细节
不全,看《深入探索C++对象模型》第二章,还有虚函数和虚继承的情况。

struct和class的静态构造函数的触发规则是不同?
什么是静态构造函数,还有动态构造函数吗?
不懂,求指教,另外,还可以看《深入探索C++对象模型》关于struct和class,好像没啥区别。除了那个默认public,private的区别。

Q1:类指针的行为 和普通指针的行为 有什么异同?
楼主的意思是类的指针可以实现多态吗?
还是楼主问类成员指针和普通指针的异同,类成员指针有类域的概念。

static变量 和 引用变量 声明后,都不会生成额外的汇编代码。后者不会分配新的内存空间。
声明一般是不分配内存的,但是引用变量在使用的时候必须初始化,没有空引用,另外,引用一般是指针实现的,是要分配内存的。不知道有没有不给引用分配内存的编译器。

static成员函数没有this指针,重载的操作符函数要善于利用this指针实现链式操作就够了。
前边半句应该是static成员函数没有this指针作为第一个参数,后边半句就不明白什么意思了,难道是像a+b+c这种要返回对象引用的操作。

读书人网 >C++

热点推荐