码迷,mamicode.com
首页 > 编程语言 > 详细

C++之使用对象前先初始化

时间:2019-11-25 22:07:19      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:需要   int   _for   private   rest   efault   初始   因此   方式   

1.内置类型

当需要使用一个int类型的变量时,我们应该先对其进行初始化,例如:

int x=0;

//.....    在后续中使用x变量

2.一个类里面的成员变量初始化

初始化类里面的成员变量时,尽量使用初始化列表对其进行初始化,例如:

class Forest

{

public:

Forest(const std::string str,int num);

private:

string m_forestName;

int  m_treeNum;

}

1)当用以下方式实现构造函数时,:

Forest(const std::string str,int num)

{

m_forestName=str;     //这属于赋值操作,而非初始化操作,初始化在进入到构造函数体之前已经被初始化

m_treeNum=num;

}

 

2)因此可以尽量使用初始化列表进行初始化,实现如下:

Forest(const std::string str,int num)

:m_forestName(str),       //这种属于初始化

m_treeNum(num)

{

}

第二种相对于第一种来说要高效一些,原因如下:

第一种首先调用default构造函数为m_forestName设初值,然后立刻再赋予新值;第二种在初始化列表中针对各个成员变量而设的实参,被拿去直接作为各成员变量的实参

 

 

C++之使用对象前先初始化

标签:需要   int   _for   private   rest   efault   初始   因此   方式   

原文地址:https://www.cnblogs.com/jiayouya-susu/p/11930833.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!