[問題] Class初始化的順序?!
我碰到一個有趣的問題,想請問大家是否有碰過。
其實我不太明白為啥會有這問題,想請問大家看看
Code 如下:
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(int argc, char *argv[]){
base obj(98);
obj.get_i();
obj.get_j();
return 0;
}
今天我把private中的 int m_i 跟 int m_j 順序對調
哪印出來的結果是不同的?
查了一下~應該是初始化的順序問題,
但還是不太明白,想請問大家看看~是否有碰過這問題呢!
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.60.223.174
→
06/21 12:16, , 1F
06/21 12:16, 1F
推
06/21 12:19, , 2F
06/21 12:19, 2F
→
06/21 12:19, , 3F
06/21 12:19, 3F
→
06/21 12:19, , 4F
06/21 12:19, 4F
→
06/21 12:20, , 5F
06/21 12:20, 5F
→
06/21 12:20, , 6F
06/21 12:20, 6F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):