深度探索c++对象模型
午后小夕
趁着青春,尽情挥洒,加油
展开
-
第二章---Default constructor 的构建操作
成员对象的构造顺序 C++语言要求”member objects “在class 中的声明次序”来调用各个构造器。这一点由编译器完成。带有”Default Constructor“ 的 Base Class带有一个”Virtual Function“ 的 Class带有一个Virtual Base Class 的Class vi原创 2015-07-09 21:35:55 · 544 阅读 · 0 评论 -
c++对象模型的初步理解
什么是c++对象模型? 有两个概念可以解释C++对象模型:1、语言中直接支持面向对象程序设计的部分2、对于各种支持的底层实现机制原创 2015-07-07 21:55:35 · 400 阅读 · 0 评论 -
Copy Constructor 的建构操作
原创 2015-07-09 22:02:06 · 453 阅读 · 0 评论 -
Data语意学
一个空的class如:class X{};//sizeof X==1;间。原创 2015-07-12 20:55:08 · 411 阅读 · 0 评论 -
程序的基本概率
开发环境:程序的工作原理原创 2015-07-12 16:32:54 · 464 阅读 · 0 评论 -
use const whenever you need
用const修饰函数的参数 如果输入参数采用”值传递“,在函数内部修改了参数,改变的也只是堆栈上的拷贝,而不是实参,所以一般认为不需要用const修饰。 当形参为对象时,采用引用传递,(不需要花费临时对象的构造,拷贝和析构的时间花费)。防止参数的改变,在前加上const修饰即可。但是当形参为数据类型时,不需要引用,因为不需要临时对象。6.13原创 2015-07-14 15:04:20 · 481 阅读 · 0 评论 -
数组和指针
指针是常数:int* const a;指针所指的内容是常数:const int *p;int* a,b ,c表示的是int *a, int b 和int c 数组和指针之间存在的等价关系: (1)一维数组等价于元素的指针 int a[10]int * const a; (2)二维数组等价于指向一维数组的指针 int原创 2015-07-15 09:30:55 · 446 阅读 · 0 评论 -
c++/c编译预处理
定义 c++/c的编译预处理器对预编译伪指令进行处理后生成中间文件作为编译器的输入,因此所有的预编译伪指令都不会进入编译阶段。预编译伪指令一般都以#打头。 常见的预编译伪指令:文件包含,宏定义,条件编译及一些不常使用的预编译伪指令和符号常量。文件包含 #include伪指令用于包含一个头文件。头文件中存放的一般是模块接口,编译预处理器在扫描到原创 2015-07-16 10:27:48 · 451 阅读 · 0 评论