1、函数的默认参数只能在函数声明中给出,而不能是函数定义给出;默认参数只能放在参数列表中的最后。
2、调试程序用assert(expression),如果expression为TRUE,则不处理;否则终止程序的执行并显示错误信息。
该宏包含在#include <cassert>;如果要关闭assert,则在添加如下代码即可。
#define NDEBUG
#include <cassert>
3、const的使用:const参数在函数中要么全用,要么都不用。如果对某一类型的数组参数使用了const,那么其他所有
同一类型的值不应该被函数改变的数组参数,都应该加上const。例如
double avg(int a[],int size);
void test(const int a[],int size)
{
double average = avg(a,size);
...
}
大多数编译器对于上面的代码都是会提示错误或者警告信息。正确的写法是把avg的声明修改为double avg(const int a[],int size);
如果类的成员函数加了const修饰,则表示该成员函数不会修改调用对象的值。
4、当函数头或者函数声明有多维数组参数时,不会给出第1维的大小,但是其余维的大小一定要写在相应的括号里。由于第1维的大小没有给出
,所以一般还需要有一个int参数给出第1维的大小。例如:
void getPage(char p[][100],int size);