|
函数重载:如果两个函数名字相同,并且在相同的域中被申明,但是参数表不同,则它们就是重载函数。
当一个参数是类型是const和volatile时,在识别函数声明是否相同时,并不考虑const和volatile修饰符。例如,下列两个声明声明了同一个函数:
//声明同一个函数
Void f ( int );
Void f ( const int );
参数是const,这只跟函数的定义有关系:它意味着,函数体内的表达式不能改变参数的值。
但是,如果把const或volatile应用在指针或引用参数指向的类型上,则在判断函数声明是否相同时,就要考虑const和volatile修饰符。
//声明了不同的函数
Void f ( int *);
Void f ( const int* );
//也声明了不同的函数
Void f ( int &);
Void f ( const int &);