目录
一、题目
二、题目以及答案
一、题目
1.C和C++中的struct有什么区别?
2.C++中的struct和class有什么区别?
3.如何判断一段程序是由C编译程序还是由C++编译程序的?
4.C和C++有什么不同?
5.C++中引用跟指针的区别是什么?
6.char str[sizeof(unsigned long)];这个会不会报错,为什么?
7.对于一个频繁使用的短小函数,C和C++分别用什么实现?
8.C++的类型安全?
9.C++如何判断一个操作系统是多少位的?
10.内存分配有哪几种?
11.const关键字的作用有哪些?
12.面向对象的三大基本特征?
二、题目以及答案
1.C和C++中的struct有什么区别?
参考答案:
C语言:没有protection行为,不能定义函数,但是能定义函数指针。
C++:有protection行为,也可以定义函数,不能定义函数指针。
2.C++中的struct和class有什么区别?
参考答案:
1.默认继承权限。如果不明确指定,class的继承按private处理,structural的继承按照public处理。
2.成员的默认访问权限。class的成员默认是private权限,struct的成员默认是public。
注意:除了以上两点,struct和class基本上就是一个东西,语法上没有任何其他区别。
3.如何判断一段程序是由C编译程序还是由C++编译程序的?
参考答案:
#ifdef __cplusplus
cout<<"C++"<<endl;
#else
cout<<"C"<<endl;
#endif
4.C和C++有什么不同?
参考答案:
1.C语言是结构化编程语言,C++s面向对象编程语言。
2.C++侧重于对象而不是过程,侧重与类的设计而不是逻辑的设计。
3.C语言适合要求代码量体积小的,效率高的场合,如嵌入式;C++适合更上层的,复杂的。
4.C语言主要是面向过程的(也可以编写面向对象);C++是面向对象的,提供了类。C++编写面向对象比C语言要简单。
5.C++中引用跟指针的区别是什么?
参考答案:
1.引用必须初始化,而指针不用。
2.引用初始化以后不能改变,而指针可以改变所指的对象。
3.不存在指向空值的引用,但是存在指向空值的指针。
6.char str[sizeof(unsigned long)];这个会不会报错,为什么?
参考答案:
不会报错。
因为这个sizeof是编译时运算符,编译时就确定了,可以看成和机器有关的常量。
7.对于一个频繁使用的短小函数,C和C++分别用什么实现?
参考答案:
C语言用宏定义,而C++用inline。
8.C++的类型安全?
参考答案:
不安全。两个不同类型之间可以强制转换。
9.C++如何判断一个操作系统是多少位的?
参考答案:
定义一个指针p,打印出sizeof(p),打印结果是8就是64位,打印结果是4就是32位,打印结果是2就是16位。
10.内存分配有哪几种?
参考答案:
1.静态存储区域分配。
2.栈上分配。
3.堆上分配。
11.const关键字的作用有哪些?
参考答案:
1.限制一个变量的改变,在定义const变量时,需要对它进行初始化。
2.对于指针来说,可以定义指针本身为const,也可以定义指针所指的数据为const,或两者都定义为const。
3.const修饰形参,此参数在函数中无法改变。
4.类的成员函数为const类型,这个函数的成员变量不可改变。
5.对于类的成员函数,指定其返回值为const类型,以使得其返回值不为“左值”。
12.面向对象的三大基本特征?
参考答案:
1.封装 2.继承 3.多态
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)