程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++:類的成員變量 聲明順序 與 初始化順序 相同

C++:類的成員變量 聲明順序 與 初始化順序 相同

編輯:關於C++

類成員的默認初始化順序是按照聲明順序進行, 如果使用初始化列表初始化成員變量, 則必須按照成員變量的聲明順序進行;

否則, 在變量之間交替賦值時, 會產生, 未初始化的變量去賦值其他變量;

同時GCC, 也會發出警告, 如: 'class::m_xxx' will be initialized after [-Wreorder]

代碼:

/* 
 * BInsertSort.cpp 
 * 
 *  Created on: 2014年4月15日 
 *      Author: Spike 
 */
      
#include <iostream>  
#include <string>  
      
using namespace std;  
      
class base {  
private:  
    int m_i;  
    int m_j;  
public:  
    base(int i) : m_j(i), m_i(m_j) {}  
    base() : m_j(0), m_i(m_j) {}  
    int get_i() { return m_i; }  
    int get_j() { return m_j; }  
};  
      
int main () {  
    base obj(98);  
    std::cout << obj.get_i() << std::endl  
            << obj.get_j() << std::endl;  
    return 0;  
}

輸出:

4202398  
98

作者:csdn博客 Spike_King

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved