C++构造函数(复制构造函数)、析构函数
摘要:注:若类中没有显示的写如下函数,编译会自动生成:默认复制构造函数、默认赋值构造函数(浅拷贝)、默认=运算符重载函数(浅拷贝)、析构函数; 1、默认构造函数(默认值)构造函数的作用:初始化对象的数据成员。 2、复制构造函数 作用:用已存在的对象初始化新建的对象的数据成员。 类对象作为形参,如果参数是引
阅读全文
posted @
2019-01-14 23:58
Love63
阅读(293)
推荐(0)
2、C++程序生成过程
摘要:(1)预处理阶段:根据源文件(.cpp)的预处理指令来修改源文件的内容(.i)。(#开头的指令,如#include) (2)编译阶段:将源代码(.i)翻译成汇编代码(.s)。 (3)汇编阶段:将汇编代码(.s)翻译成目标机器代码(.o)。 (4)链接阶段:某个源文件中的函数可能引用另一个源文件中定义
阅读全文
posted @
2018-07-31 23:55
Love63
阅读(313)
推荐(0)
1程序内存分配
摘要:C/C++占用内存分为以下五种情况: (1)栈区 : 存放局部变量 (由编译器自动分配和释放。) (2)堆区:存放由malloc/new创建的对象(由程序员申请和释放。) (3)全局区(静态区):存储全局变量和静态变量;程序结束后由系统释放。(初始化的全局变量和静态变量放在一起,未初始化的全局变量和
阅读全文
posted @
2018-07-31 23:22
Love63
阅读(114)
推荐(0)
二级指针和函数参数——指针参数是如何传递内存的?
摘要:1:如果函数的参数是一个指针,不要指望用该指针去申请动态内存。Test 函数的语句 GetMemory(str, 200)并没有使 str 获得期望的内存,str 依旧是 NULL,为什么? 原因: 毛病出在函数 GetMemory中。编译器总是要为函数的每个参数制作临时副本,指针参数 p 的副本是
阅读全文
posted @
2016-10-07 22:46
Love63
阅读(2745)
推荐(0)
假设在一个 32 位 little endian 的机器上运行下面的程序,结果是多少?
摘要:假设在一个 32 位 little endian 的机器上运行下面的程序,结果是多少? 1 printf()是一个库函数,C,C++中函数的参数是从右往左入栈的; 2 栈的生长方向是从高往低的 3 小端模式是低位存储在低字节 4 %d格式输出的是4个字节大小,而long long为8个字节 所以,a
阅读全文
posted @
2016-09-02 17:10
Love63
阅读(590)
推荐(0)