→ adrianshum:virtual inheritence 反而變大? 202.155.236.82 02/13 16:54
→ adrianshum:還是你指的是有 method 是 virtual? 202.155.236.82 02/13 16:56
→ adrianshum:static 是 1 很正常因為 int 不是 202.155.236.82 02/13 16:56
→ adrianshum:instance var 而是 class var 202.155.236.82 02/13 16:57
→ legnaleurc:對,就是virtual inheritence 211.74.131.219 02/13 16:56
→ ya790206:虛擬計程真的變大,DevC++跟VC++2005 59.116.135.217 02/13 16:56
→ legnaleurc:use gcc 4.1.2 211.74.131.219 02/13 16:57
→ legnaleurc:但是class B也變成1就說不過去了 211.74.131.219 02/13 16:58
推 adrianshum:virtual繼承和一般主要分別不是指多個 202.155.236.82 02/13 17:00
→ legnaleurc:畢竟B還是有一般成員變數啊 211.74.131.219 02/13 17:00
→ adrianshum:同樣的 base class instance 只會出現 202.155.236.82 02/13 17:00
→ adrianshum:在本身一次嘛? 理應只會小不會大哩, 還 202.155.236.82 02/13 17:01
→ adrianshum:是要逹到這個有特別的 overhead? 202.155.236.82 02/13 17:01
→ adrianshum:legnaleurc: 1 沒有問題吧? 裡面沒東西 202.155.236.82 02/13 17:01
→ adrianshum:不是 1 該是什麼 ? o_oa 202.155.236.82 02/13 17:02
→ legnaleurc:不會連vt也算在sizeof裡吧? 211.74.131.219 02/13 17:02
→ legnaleurc:A有一個static int x 211.74.131.219 02/13 17:02
→ legnaleurc:啊啊,我好像了解了....所以static不會 211.74.131.219 02/13 17:03
→ legnaleurc:使用多餘的空間 211.74.131.219 02/13 17:04
→ legnaleurc:我原本認為是1 2,就是會再加上B 211.74.131.219 02/13 17:04
推 adrianshum:vt 當然有算在 sizeof 的 202.155.236.82 02/13 17:06
推 saladim:虛擬繼承會多出一個指標122.116.230.132 02/15 20:39
→ saladim:指向virtual table, 請參閱C++的書籍122.116.230.132 02/15 20:39
→ saladim:static的member不算入class大小122.116.230.132 02/15 20:41