【C++】没有用的知识
关注没有用的知识
1.main函数
- main函数和其他函数一样,只是在编译器结束的时候会指定该函数作为程序的入口,我们也可以通过命令来使其他函数作为程序的入口;
2.变量
- 每一个变量都对应一个内存地址;
- 占用空间的大小跟变量的类型有关;
- 临时/栈/局部 变量 在不同的线程下会有不同的内存地址,即使是同一线程,不同调用轨迹下,地址也会不一样;
3. i++ VS ++i
- i++和++i都是函数调用,且都有返回值,i++的返回值是入参及i的传入值,++i的返回值为i的引用;
- i++是右值,++i是左值;
- i++都是对i进行了++操作,但是从编译的角度讲,++i是直接对i进行了++操作,而i++是构建了临时变量再++,因此,对于复杂的类的++操作建议用++i,但是对于int等基础数据类型的话可以忽略不计,因为对应下来也就多了两条汇编指令;
4.this指针
- 所有的函数都会隐式的传入一个this指针;
- this指针
5.构造函数
- 构造函数也会传入一个this指针进入构造函数;
- 如果该类中存在虚幻数,则构造函数会存放虚函数表的地址;
- 在实现多态的时候,子类的构造函数会对应子类的虚函数表构造函数;
- 虚函数表的生成是早于构造函数的;
必学:CPU眼里的:编程知识
下一篇:[]
“Time after time have given me new courage to face life cheerfully, have been Kindness, Beauty, and Truth. “ —Albert Einstein
This post is licensed under CC BY 4.0 by the author.