别名声明的作用
例: typedef int arrT[10];
using arrT = int[10];
arrT* func(int i);
arrT是含有10个整数的数组的别名,因为无法返回数组,所以将返回类型定义成数组的指针,因此,func函数接受一个int实参,返回一个指向包含10个整数的数组的指针。
函数重载指的是那些同名不同参的函数,函数重载都不不同的参数,在一定程度上减轻了程序员起名字、记名字的负担。
重载与作用域
void print (const string &);
void print (double);
void foobar (int ival)
{
void print (int );
print ("value :"); //调用失败,print (const string &)被隐藏掉了
print (ival); //调用成功,当前print(int)可见
print (3.14); //正确,调用的是print(int),double类型转换为int类型
}
函数里部有同名的,外部的会被隐藏。