1.命名空间
为了解决命名冲突的问题,C++使用了命名空间,不同的命名空间里可以有相同的变量名,函数名等等,有效地规避了命名冲突的问题,定义命名空间如下:
namespace MySpace
{
//可以放变量
int i = 0;
//可以放结构体
struct MyStruct
{
int a = 0;
};
//可以放函数
void SayHello()
{
cout << "hello" << endl;
}
//可以放类
class MyClass
{
int b = 0;
};
}
要使用命名空间中的变量,需要用到作用域运算符" :: " , 这是一个二目运算符,左边放命名空间,右边放相关变量,具体使用如下:
int main()
{
int num = MySpace :: i;
MySpace::SayHello();
return 0;
}
3.缺省函数
在创建C++函数时,你可以为传入的参数变量先赋上默认值,在使用该函数时,你可以不传入参数给该变量,该变量自动使用默认值,其使用如下例:
void MyFunc(int i,int j = 0 , int k=1)
{
cout << i + j + k << endl;
}
int main()
{
MyFunc(2);
MyFunc(2, 3);
MyFunc(2, 3, 4);
return 0;
}
3.函数重载
在同一域的函数,使用相同函数名,但传入参数类型和数量不同的话,构成函数重载,其具体使用哪个函数由传入的参数决定,使用例如下:
int add(int a,int b)
{
return a + b;
}
float add(float a,float b)
{
return a + b;
}
int main()
{
int a = add(1,2);
float b = add(1.0f, 2.0f);
return 0;
}