c++习题
jstarlet
这个作者很懒,什么都没留下…
展开
-
什么是默认构造函数?
不传递任何参数就可以被调用的构造函数。默认构造函数分为两种:本身不带参数以及带参数,但每一个参数都带默认值。原创 2015-08-31 17:04:06 · 2131 阅读 · 0 评论 -
面向对象的三个基本特征,并简单叙述之?
答: 1.封装: 封装是指利用抽象数据类型和基于数据的操作结合在一起,数据被保护在抽象数据类型的内部,系统的其他部分只有通过包裹在数据之外被授权的操作,才能与这个抽象数据类型进行交互。2. 继承: 它是与传统方法不同的一个最有特色的方法。它是面向对象的程序中两个类之间的一种关系,即一个类可以从另一个类(即它的父类)继承状态和行为。继承原创 2015-08-31 16:17:43 · 4372 阅读 · 0 评论 -
解释此函数原型中三个const的作用const int* computeResult( const int& var ) const。
答: 第一个函数返回值的const表示返回的是一个常量指针; 参数const说的是var是一个常引用,无法通过var来修改变量的值; 第三个const表示computeResult函数是一个常成员函数,无法在函数中修改对象成员变量的值。原创 2015-08-31 19:33:52 · 596 阅读 · 0 评论 -
C++中,编译器会默认提供的构造函数有哪几种? C++中默认构造函数有几种,详细描述每一种。
答: 只有一种,默认构造函数。(不带参数的构造函数)答:两种: 1.不带有任何参数的构造函数。比如 Example();如果用户没有定义任何构造函数,则编译器会默认提供这个构造函数。 2.带有默认值得构造函数。比如Example(int a = 23);原创 2015-08-31 17:06:37 · 1813 阅读 · 0 评论 -
new delete 与malloc free 的联系与区别?
答: new delete和malloc free都是释放申请的堆上的空间,都是成对存在的,否则将会造成内存泄露或二次释放。不同的是,new delete是C++中定义的操作符,new除了分配空间外,还会调用类的构造函数来完成初始化工作,delete除了释放空间外还会调用类的析构函数。而malloc和free是C语言中定义的函数。原创 2015-08-31 17:00:48 · 624 阅读 · 0 评论 -
类中包含几种成员,分别是什么?
类中有两种成员:成员变量以及成员函数。其中成员变量分为静态的成员变量以及非静态的成员变量;成员函数分为静态的成员函数以及非静态的成员函数。原创 2015-08-31 16:22:13 · 17740 阅读 · 0 评论 -
简述使用<iostream.h>与<iostream>命名空间std这两种形式有什么区别?
答: 和是不一样,前者没有后缀,实际上,在你的编译器include文件夹里面可以看到,二者是两个文件,打开文件就会发现,里面的代码是不一样的。 iostream.h是C的头文件库,iostream是C++标准头文件库,C++标准为了和C区别开,也为了正确使用命名空间,规定头文件不使用后缀.h。(但是因为早期C++继承了C的特性,为了兼容以原创 2015-08-31 16:08:56 · 3850 阅读 · 0 评论 -
class和struct 的区别?
答:在C++中,在class中声明的成员默认为private成员,而在struct中声明的成员默认为public成员。class的默认继承方式为private, struct默认继承方式为public;原创 2015-08-31 13:18:45 · 475 阅读 · 0 评论 -
C也可以通过精心封装某些函数功能实现重用,那C++的类有什么优点吗(从面向对象的三大属性进行分析)
答: (1).封装:将客观事物抽象成类,每个类对自身的数据和方法实行protection(private,protected,public),而C不具备这种语法。 (2).继承:派生类继承自基类,基类中拥有的数据派生类中也就拥有了,提高代码重用性,不需要再重新编 写代码。 (3).多态:是将父对象设置成为和一个或更多的他的子原创 2015-08-31 13:12:49 · 1267 阅读 · 0 评论