Logo

C++函数

C++函数

函数的返回值可以是引用,但不能是局部变量的引用

函数重载

重载函数的返回值类型和参数可以不同

重载和const形参

一个拥有顶层const的形参无法和另一个没有顶层const的形参区分

如果形参是某种类型的指针或者引用,则通过区分其指向的是常量还是非常量来实现函数重载,此时const是底层的

重载和作用域

如果在内层作用域中声明名字,它将隐藏外层作用域中声明的同名实体

void print(const string &s);
void print(double);
void fun(){
		void print(int);//注意此处print(string)和print(double)被隐藏
		print("hello");//错误,此处调用的是print(int)
}

特殊用途语言特性

默认实参

**注意:**在给定的作用域中一个形参只能被赋予一次默认实参

通常,应该在函数声明中制定默认实参,并将该声明放在合适的头文件中

局部变量不能作为默认实参,全局变量可以作为默认实参

内联函数和constexpr函数

内联函数

在返回类型前加上inline关键字,将函数定义成内联函数

内联函数可以避免函数调用的开销

© 2025 All rights reservedBuilt with Flowershow Cloud

Built with LogoFlowershow Cloud