|
C++同C一样,也是函数驱动,程序入口也是main函数。有关虚函数的概念详见6.1.1.5节。
|
|
|
|
|
|
|
C++允许有默认值,定义时指明默认变量的默认值。值得注意的是,若形参有多个时,默认变量必须在最后声明。如void power(double x, int n=2)表示n的默认值为2。
|
|
|
|
|
|
对于有默认形参的函数,调用形式更为灵活。如前面的例子,调用power(x)时相当于power(x,2)。
|
|
|
|
C++中函数的参数传递与C语言基本类似。另外,C++增加了引用传值,传递的是地址,相当于别名。如定义函数void exchange(double&x1, double&x2),调用时exchange(x1, x2),结果与C语言中的指针传值是一致的:定义void exchange(double *x1, double *x2),调用exchange(&x1,&x2)。
|
|
|
|
内联函数不是在调用时发生控制转移,而是在编译时将函数体嵌入在每一个调用语句处。
|
|
|
|
|
|
(1)内联函数一般不包含循环语句和switch语句。
|
|
|
|
|
|
函数名相同而形参不同(类型或个数)的两个函数就构成了重载。仅返回类型不同的两个函数不能构成重载。
|
|
|
|
模板是为了替代容易出错的宏而提出的。模板分为函数模板和类模板,这里先讨论函数模板。函数模板其实就是定义了一系列仅数据类型不同的函数。
|
|
|
|
|
|
|
|
|
|