摘要:
默认参数/缺省参数 //一旦某个参数被设置了默认值,后面的所有的参数都要设置默认值////默认参数的设置只能从右到左的顺序进行int add(int x = 0, int y = 0){ return x + y;} int add(int x, int y, int z){ return x + 阅读全文
摘要:
inline //inline函数可以有声明和实现,但是必须在同一文件//inline函数不能分成头文件和实现文件 inline int add(int x, int y){ //一般不要放循环语句 return x + y;} //如果是自定义类类型,都要大写首字母class Computer{p 阅读全文
摘要:
引用于指针的区别?相同点: 引用底层的实现还是指针, 引用于指针都有"地址"的概念 不同点:1. 引用是一个变量的别名,必须要进行初始化 指针是一个独立的实体,可以不进行初始化2. 引用不是一个独立的实体3. 引用一经绑定之后,就不会就再改变其指向; 指针是很灵活的,可以改变指向 void test 阅读全文
摘要:
malloc/free与new/delete表达式的区别?相同点: 都是用来申请堆空间不同点: 1. malloc/free是库函数; new/delete是表达式 2. malloc开空间时,并不会进行初始化;new表达式是可以进行初始化 void test0(){ int * p0; int * 阅读全文
摘要:
using namespace std; //using编译指令, 它会一次性把std空间中的所有实体全部引进来 //要求:熟悉空间中的实体 //目前来说,不推荐使用 namespace wd{ void display() { cout << "wd::display() " << endl; } 阅读全文
摘要:
C++语言支持函数重载实现原理: 名字改编(name mangling)具体步骤: 当函数名称相同时,会根据函数参数的类型、个数、顺序进行改编 对源码直接用C++编译器进行编译时,会按C++方式进行调用对于C源码不希望按C++方式进行调用(不进行名字改编),按C的方式进行调用C的代码要放在C++中运 阅读全文
摘要:
宏定义与const的区别?(概念题是最容易丢分)1. 发生时机不一样: 宏定义发生在预处理时,const关键字发生编译时2. 宏定义仅仅只做了字符串的替换,没有类型检查; const关键字有类型检查,可以提前发现错误3. const关键字更推荐使用; 因为使用const关键字可以减小犯错误的概率 # 阅读全文