
c++
文章平均质量分 57
luckystar_sai
机会总是垂青有准备的人
展开
-
C++中const迭代器 和 const_iterator的区别
const迭代器,顾名思义,就是不能改变的迭代器,是常量,其性质是由const决定的。比如说我们这样定义一个const迭代器。 [cpp] view plain copy vectorint> vv(10,9); const vectorint>原创 2017-07-17 09:17:01 · 226 阅读 · 0 评论 -
不能是虚函数的有
1.非类的成员函数,即 普通函数 它们没有继承性,即便声明为虚函数,也毫无意义。 2.构造函数 首先,构造函数是不能够被继承的,自然就不能声明为虚函数 其次,构造函数是用来执行初始化的,虚函数是用来实现多态性的。若尚未构造出来,如何实现多态?!显然行不通。 3.静态成员函数 类的静态成员函数是不能够继承的,对于拥有它的类,只有一份代码,由原创 2017-10-06 18:55:31 · 298 阅读 · 0 评论 -
c++中assert函数的用途
(1)assert函数定义在 assert.h函数中,作用用来检查条件的合法性,如果不成立,则则终止程序执行,原型定义:#include assert.h>void assert( int expression ); assert的作用是现计算表达式 expression , 如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行原创 2017-10-06 10:02:48 · 1784 阅读 · 0 评论 -
全局变量和局部变量的区别/静态成员函数变量和非静态函数变量的区别
一、全局变量和局部变量的区别 (1)、生命周期 (2)、存储区不同。前者在全局数据区,后者在堆栈区; (3)、作用域 (4)初始化时,全局变量被初始化为0,后者是随机数; 二、静态成员(函数、变量)和非静态函数(变量)的区别 (1)共享性:静态成员是类的一部分,被类的所有的对象实例所共享;非静态数据成员,类的每个实例都有一份拷贝。 (2)内存分配:静态成员是类的静态成员(数据成员和函原创 2017-10-06 11:02:55 · 455 阅读 · 0 评论 -
C++中什么情况下必须在初始化列表中完成初始化
1、当类的成员是常变量时,即用const来回修饰的类的成员;2、类的成员是引用;3、需要初始化的数据成员是对象的情况(这里包含了继承情况下,通过显示调用父类的构造函数对父类数据成员进行初始化); 数据成员是对象,并且这个对象只有含参数的构造函数,没有无参数的构造函数; 如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,而没有默认构造函数,...原创 2018-03-12 14:28:07 · 3128 阅读 · 0 评论 -
C++中纯虚函数与虚函数的区别
1、在一个类中定义一个纯虚函数,则这个类是抽象类。纯虚函数在基类中是不实现的,只是提供一个接口。在子类中分别去实现。在很多情况下,类本身是不生成对象的。动物作为一个基类可以派生出老虎、孔雀等子类,但动物本身生成对象明显不合常理。纯虚函数就是基类只定义了函数体,没有实现过程,定义方法如: virtual void Eat() = 0; 不要 在cpp中定义;纯虚函数相当于接口,不能直接实例化,需要派...原创 2018-03-13 11:01:18 · 530 阅读 · 0 评论