摘要:
例子 class CTest { char a; int b; double c; }; int main() { cout << sizeof(CTest) << endl; return 0; } 输入命令 cl ConsoleApplication1.cpp /d1reportSingleCl 阅读全文
摘要:
指令区域对于进程来说是只读的,可以防止程序指令被修改 指令区和数据区域分离提高程序局部性,提高缓存命中率 程序中运行多个程序的副本时,指令都是一样的,在内存中只需要保存一份就行了,节省空间。 阅读全文
摘要:
[TOC] 1.程序和进程 程序:二进制文件,占用磁盘空间 进程:启动的程序 2.并行与并发 并行:时间点概念 并发:时间段概念 3.进程5种状态 4.循环创建多个子进程 include include include include include include int counter = 10 阅读全文
摘要:
[TOC] 1.虚拟地址空间 对每一个运行的进程,操作系统都会为其分配一个0~4G的地址空间 父子进程打印的全局,静态,局部变量值不一样的,但是它们的地址是一样的。所以我们可以确定父进程在fork子进程时,子进程几乎把整个父进程复制了过去(包括0 4G虚拟地址空间)。 在修改数据时,虽然父子进程的数 阅读全文
摘要:
[TOC] 1.异常 void divide(int a, int b) { if(b == 0) throw b; } void callDivid(int a, int b) { divide(a,b); } int main( ){ //尝试去捕获函数异常 try { callDivid(10 阅读全文
摘要:
[TOC] 1.多态 由继承而产生的相关的不同的类,其对象对同一消息会作出不同的响应。 多态成立的条件 1 要有继承 2 要有虚函数重写 3 要有父类指针(父类引用)指向子类对象 图1: 图2: 多态用于虚析构函数 虚析构函数用于指引 delete 运算符正确析构动态对象 VPTR指针分步初始化 c 阅读全文
摘要:
[TOC] 1.继承 class Student { public: Student() { } Student(int id, string name) { this id = id; this name = name; } void printS() { cout 阅读全文
摘要:
[TOC] 1.this 2.友元 2.1:友元函数 可以直接访问类的私有成员的非成员函数。 它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上 关键字 friend。 2.2:友元类 友元类的所有成员函数都是另一个类的友元函数,都可以访问另一个类中的 阅读全文
摘要:
[TOC] 1.内联函数(inline) 编译器直接将函数体插入在函数调用的地方 没有普通函数调用时的额外开销(压栈,跳转,返回) 内联函数 由编译器处理;宏代码片段 由预处理器处理 本质:以牺牲代码段空间为代价,提高程序的运行时间的效率。(以空间换时间) 2.占位参数 void fun(int x 阅读全文
摘要:
[TOC] 1.三目运算符(可以当左值) 引用作为返回值,不要返回局部变量的引用 int& getA( ) { int a = 10; return a; } int &A = getA( ); coutage = 33; p = tmp; return 0; } int getTeacher2(T 阅读全文