C++学习笔记(五)
来源:互联网 发布:网络大电影错爱 编辑:程序博客网 时间:2024/05/22 15:46
今天来学习一下Overload——重载;它和Override——重写是有区别的。
通常,自然语言中同一个词可以代表多种不同的含义,具体含义要依赖上下文来确定。这就是所谓的一次多义——该词被重载(Overload)了。
在C++中,还有另外一个因素会使函数名重载:构造函数。因为构造函数的名字预先由类的名字确定,所以看上去只能有惟一一个构造函数名。但如果我们想用多种方法来创建一个对象时该怎么办呢?因此,函数重载对于允许函数同名是必不可少的。在这种情况下,构造函数是与不同的参数类型一起使用的。
函数重载意味着,我们有两个库,他们都有相同名的函数,只要他们的参数列表不同就不会发生冲突。
C++中有一个很通用的特征叫做默认参数(default argument)。默认参数就是在用户调用一个函数时没有制定参数值而由编译器插入参数值的参数。因此,f("hello")、f("hi",1)和f("howdy",2,'c')可以用来调用同一个函数。他们也可能用来调用三个已重载的函数,但当参数列表相同时,我们希望调用同一个函数来完成相同的操作。
使用默认参数的规则:第一,只有参数列表的后部参数才是可默认的,不可以在一个默认参数后面又跟一个非默认的参数。第二,一旦在一个函数调用中开始使用默认参数,那么这个参数后面的所有参数都必须是默认的。
默认参数只能放在函数声明中,通常在一个头文件中。编译器必须在使用该函数之前知道默认值。
我对重载和默认参数的学习体会就这么多,剩下的就是要在Coding慢慢品味了。
- 《C和指针》学习笔记(五)
- [C++]C++学习笔记(五)
- C语言学习笔记(五)指针
- C语言程序学习(五)笔记
- 《Effective C++》学习笔记(五)
- C语言学习笔记(五)
- 《effective c++》学习笔记(五)
- c语言学习笔记五
- C/C++学习笔记(五)
- Objective C学习笔记(五)
- 学习笔记(五)
- 学习笔记(五)
- Objective-C 2.0 学习笔记五(类)
- C语言学习笔记(五)--顺序程序设计
- IOS之Objective-C学习笔记(五)
- C/C++学习笔记(五)面向对象的编程
- (c/c++学习笔记五)数组和指针
- Objective-C学习笔记(五)-选择结构
- 外贸企业网站的搜索引擎优化
- 我们一起奋斗
- ASP 页面 Provider 错误 '80004005' 未指定的错误 的最终解决方法
- 表框操作函数集合
- freeBSD挂载windows共享文件夹
- C++学习笔记(五)
- [转载] 設定 Visual C++ 2005 Express Edition 來編寫 Win32 程式
- 【转】JDBC解析
- 从SqlServer中随机读取记录
- Backdoor.Win32.IRCbot.vim(mdesvc.exe)
- 作者原序-引用oldjavaman的文章
- [LUPA学习向导]如何成为Shell编程高手
- 提高MySQL 查询效率的三个技巧
- CSS给背景图定位http://www.cniter.com/tech/css/10049_1.html