#include <iostream>
using namespace std;//使用c++标准库(放在一个叫std的命名空间里),练习中可使用,项目中不用
命名空间 namespace 名称 {} 格式
namespace只可以在全局中定义,也可嵌套定义
namespace GaoYu
{
int ret = 10;
int b = 40;
}
using GaoYu::b;//局部展开
int main()
{
int ret = 0;
cout << ret << endl;
cout << b << endl;
cout << GaoYu::ret << endl;
}
命名空间使得c++中允许命名重复的出现解决了命名冲突的问题,“::”是域作用限定符
c++的输出方式不再需要指定格式(可自动识别变量类型),
<<是流插入运算符,>>是流提取运算符,用于输出和输入,cin>>a,cout<<b
指定输出精度时可用c中的printf输出,c++中要使用函数不方便
缺省参数(分为全缺省和半缺省)
void fun(int a=0,int b=10)//(全)
{}
void fun1(int a,int b=3,int c=0)//(半)
{}
int main()
{
fun(3, 4);
fun1(4);
}
给函数中的参数一个默认值,若不传参数则使用,否则不用
缺省参数需从右往左连续依次缺省,不可间隔跳跃
调用函数时传过去的参数从左往右依次与函数参数结合,传参时要从左往右依次给实参
函数声明预定义分离时,缺省参数只在声明中出现一次即可,不需要在定义中出现
函数重载
允许函数名称相同,但函数的参数个数,类型,必须有一个不同
引用
int a = 10;
int& b = a;//引用相当于取别名,可在一定程度上规避指针
void Swap(int& px, int& py)
{
int tmp = px;
px = py;
py = tmp;
}