C++常见面试题(一)C/C++区别 const用法
来源:互联网 发布:党规党纪面前知敬畏守 编辑:程序博客网 时间:2024/06/05 14:20
1.C与C++的区别
a.C是面向过程的语言 C++是面向对象的语言
b.C中函数不能进行重载 C++函数可以重载
c.C函数的参数如果没有写void即是可变参数,形如 int sum() ;C++中int sum()则为空函数
d.C中struct中不能有函数 C++中可以有函数
2.Const的一些用法
const修饰函数时候
修饰函数返回值和类的成员函数函数体时注意事项如下
#include<iostream>using namespace std;const int a()//返回值为const {return 3;}class A{public:int temp;int fun (int x)const//类中成员函数的函数体由const修饰时,不能改变成员变量的值 {//temp=5;//修改了temp的值,出错 return 0;}};int main(){ //int v=a();//a()只能作为右值,可以赋给int v和const int v const int v=a(); cout<<v; A a; a.fun(5); return 0;}
#include<iostream>using namespace std;int fun(const int a){//a=3;//不能改变参数的值int b=6;//可以改变return 0; }int main(){ fun(7); return 0;}
const修饰变量时
#include<iostream>using namespace std;int main(){ int b=4; int c=5; const int *a= &b;//const 在*左边,指针指向的内容为常量 即a的内容为常量
int const *a=&b;//效果如上相同 a=&c;//可以改变a的指向 // *a=9;//错误:但是不能改变a的内容 cout<<*a; return 0;}
#include<iostream>using namespace std;int main(){ int b=4; int c=5; int *const a=&b;//const在*号的右边,表明指针a是常量不能进行修改,但是a指的内容是可以修改的 //a=&c;//错误:指针a的指向不能修改 *a=7; cout<<*a; return 0;}
#include<iostream>using namespace std;int main(){ int b=4; int c=5; const int *const a=&b;//const在*号的两边都有,表明指针a是常量不能进行修改,但是a指的内容是也不可以修改的 //a=&c;//错误:指针a的指向不能修改 //*a=7; //错误:指针a指的内容不能修改 cout<<*a; return 0;}
阅读全文
0 0
- C++常见面试题(一)C/C++区别 const用法
- C常见面试题<一>
- c语言常见面试题(一)
- c/c++常见面试题(一)
- C常见面试题
- C常见面试题
- C/C++ 常见面试题(一)
- [C#]c#面试笔试题(一)
- C语言const常见用法
- c语言常见面试题(二)
- c/c++常见面试题
- C/C++ 常见面试题
- c/c++常见面试题
- C/C++常见面试题
- C语言常见面试题
- c/c++常见面试题
- c/c++常见面试题 .
- c/c++常见面试题
- Proving Equivalences HDU
- Pixhawk飞行模式的讨论
- 集合类
- Divisors POJ
- HDOJ2054(大数处理)
- C++常见面试题(一)C/C++区别 const用法
- 文件操作——File
- 【网页--HTML使用教程】
- Java SE8 Lambda 基础入门---lambda表达式的类型是什么
- H5 表格的结构图
- 【NOIP2015】 跳石头
- 图片在水平上居中的原理
- Qt 之 模仿 QQ登陆界面——旋转窗口篇
- 成为IT精英,我奋斗了7年