- 博客(4)
- 资源 (2)
- 收藏
- 关注
原创 条款2:尽量以const,enum,inline替换#define
这一条款也被称作:宁可用编译器替换预处理器。对于一般用#defined定义的常量,可以使用const类型代替。但是要注意两种特殊情况:假如我们要在头文件中定义一个不能被修改的字符串,那么需要使用const char* const类型的指针:char a = 'A'; char b = 'B'; char* const pa1 = &b;//近水楼台先得月,const离谁近就修饰谁,c
2016-08-25 21:00:36 6345
原创 条款1:视C++为一个语言联邦。
C++是一个如此复杂的语言,可以分解为4大部分:1.C语言:比如内置数据类型,数组,指针,预处理,语句等内容均来源于C。2.面向对象的C++:类、构造函数,析构函数,封装,继承,派生,多态,虚函数。3.泛型C++:就是使用模板编程。4.STL库:各种容器,迭代器,算法,函数对象。 由于有这4种不同的风格,所以当你对内置数据类型操作时,通过值传递比通过引用传递更高效;但当你使用的...
2016-08-18 16:39:16 1254
转载 为什么基类指针和引用可以指向派生类对象,但是反过来不行?
基类指针和引用BaseClass *pbase = NULL; DerivedClass dclass; pbase = & dclass; 基类指针和引用可以指向派生类对象,但是无法使用不存在于基类只存在于派生类的元素。(所以我们需要虚函数和纯虚函数)原因是这样的:在内存中,一个基类类型的指针是覆盖N个单位长度的内存空间。 当其指向派生类的时候,由于派生类元素在内存中堆放是:前N个是基类
2016-08-10 19:32:27 13954 5
原创 学习c++的50条建议
1.把C++当成一门新的语言学习(和C没啥关系!真的); 2.看《Thinking In C++》,不要看《C++编程思想》(C++编程思想,翻译的非常差); 3.看《The C++ Programming Language》(这本东西有影印板的)和《Inside The C++ Object Model》 ,不要因为他们很难而 我们自己是初学者所以就不看; 4.不要被VC、BCB、...
2016-08-10 10:52:46 9226 3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人