C++函数重载的几个问题
来源:互联网 发布:js设置input字体颜色 编辑:程序博客网 时间:2024/05/21 03:16
第一个问题,作用域
C++中已知有函数重载,但是在某个scope内重新声明某个函数时,会覆盖掉原先的函数声明,例如
void f(int i){ cout << "int"<<endl;}void f(char c){ cout << "char"<<endl;}int main(){ void f(int i); f('a'); return 0;}输出将会是int
第二个问题,const
const会区分底层const,而不会区分顶层const
例如:
void f(char * c){ cout << "char"<<endl;}void f(char * const c){ cout << "const char"<<endl;}这是重定义的
然而如下代码可以正确运行
void f(char * c){ cout << "char"<<endl;}void f(const char * c){ cout << "const char"<<endl;}
函数会根据指针指向的区域是否只读来区分两个函数
f("1234");//输出为const char
char a[4]{"123"};
f(a);//输出为char
0 0
- C++函数重载的几个问题
- 【C++】函数的重载
- 【c++】函数的重载
- [C++]C++的函数重载
- 【c#】函数重载的条件
- c函数重载的实现
- 嵌入式C的几个问题
- C/C++面试题--数组作为函数参数的几个问题
- 深入剖析C 重载函数的应用
- linux c/c++ 函数的重载
- C++_函数的重载使用举例
- 如何实现 C 的函数重载
- C语言是实现函数的重载
- 【C++】【学习笔记】【006】函数的重载
- C函数的模拟重载实现说明
- 【C++】成员函数的重载,覆盖,隐藏
- c,c++函数重载的区别
- [c++]如何取重载函数的地址
- Linux内核学习第1天
- 关于activity和返回键
- 表单模糊搜索
- eclipse产生的.html格式文档转化为.chm格式方法
- java 卡片布局
- C++函数重载的几个问题
- java集合框架之ArrayList
- sharedUserId
- Java核心技术学习笔记
- Linux命令-grep
- C语言拾遗:关于数字后面加字母
- li排序
- hadoop打jar包
- C#路径操作、目录操作和文件操作