C++编程思想读后感(七):Function Overloading and Default Arguments

1、C++引入函数重载(Overload)的原因有二:其一、方便程序员使用相同的函数名称表达相近的功能实现(仅仅参数不同);其二,构造函数名称已经确定等于类名,而构造函数又极有可能需要多个,函数重载势在必行。

2、重载的实现原理:编译器根据函数的作用域、参数列表和函数名生成不同的函数中间变量,以区分不同函数(即使他们的函数名相同),实现函数重载。记住,函数返回值不能作为重载依据!

3、union也可以拥有构造函数、析构函数、成员函数以及访问控制。union不可以实现继承。

4、匿名union:没有类型名,没有变量名的union。对于匿名联合,可以直接使用他们。他们和一般变量的区别在于他们共同占用一块内存。

4、使用默认参数有利于简化函数,如果两个或多个函数的参数和实现存在相似性。记住,默认参数只能存在于参数列表的后边,在任何默认参数之后,不能存在非默认参数。当你定义一个函数并大规模使用,其后突然需要增加参数,将新加的参数作为默认参数可以避免修改之前的客户端调用代码。

 

猜你喜欢

转载自blog.csdn.net/goalcn/article/details/6545029
今日推荐