C++ primer 第6章 函数
6.4函数重载
同一作用域内几个函数名字形同,但是形参列表不同,叫做重载。
main 函数不能重载
形参不同 分为两个方面
- 形参类型不同
- 形参个数不同
const 做顶层时形参不区别重载
如果形参是某种类型的指针或者引用,通过区分指向常量对象还是非常量对象 可以实现函数重载。
6.5.2inline 函数
一般程序较小时 直接嵌入到程序执行处 ,减少程序运行时的开销。
6.7函数指针
函数指针指向的是函数,而非是对象,函数指针指向某种特定的类型。函数类型 由它的 返回类型和形参共同决定,与函数名字无关。
// 比较string 长度的函数
bool lengthCompare (const string &, const string &)
// 函数类型是 bool (const string &, const string &)
// pf 指向一个函数,该函数的参数两个 const string的引用 返回bool 类型
bool (*pf) (const string&, const string&)
pf 前 有*号 因此pf是指针 ,右侧为形参列表 表示 pf 指向的是函数 ,函数返回类型为 bool 型 。
不可以去掉**(pf)* ,去掉后 意思该变 pf 为指向bool 指针的函数。