推 fatrabitree: 沒有member variable 而size不可為0 ->1 05/23 13:19
推 johnjohnlin: 1. class 內只有宣告 struct 沒有實體所以不佔空間 05/23 13:19
推 johnjohnlin: 2. cout member function 是什麼意思啊,有什麼用 05/23 13:22
→ johnjohnlin: 如果真的是第幾個的話也該是 0-index 05/23 13:22
推 loveflames: 因為A是empty class,大小為1 05/23 14:02
→ tomjpsun: 感謝大大,原來 size 1 是因為這樣,問題 1. 學習了! 05/23 16:46
→ tomjpsun: 跪求問題2.的解釋... 05/25 17:31
推 LPH66: 問題2: 因為 operator << (ostream&, ???) 這系列函式裡 05/26 19:29
→ LPH66: 沒有吃 A::Slot::* 這種指標的東西, 所以編譯器會找一個 05/26 19:29
→ LPH66: 能夠 implicit 轉得過去的東西, 這裡找到的是轉成 bool 05/26 19:29
→ LPH66: 而一個普通指標轉成 bool 相當於檢查是否為空指標 05/26 19:30
→ LPH66: 這裡顯然這個指標並非空指標故轉成 true, 最後就 cout 了 05/26 19:30
→ LPH66: 另外兩個前者是 Slot*, 後者是 cl_program (== int*) 05/26 19:32
→ LPH66: 在這裡由於它們能夠 implicit 轉成 void* 所以就是用它 05/26 19:32
→ LPH66: 因此才會印出其位址出來 05/26 19:32
→ LPH66: (注意到由於成員指標和物件指標是兩個東西, 後者可以轉成 05/26 19:33
→ LPH66: void* 但前者不行) 05/26 19:33