Re: [問題] C++ 是否真有結構體存在?
事實上,在C++裡的
class OO {
public:
int member1, member2;
};
與C語言裡的
struct SS {
int member1, member2;
};
它們在電腦的記憶體裡的樣子,其實是一模一樣的
雖然我們看程式碼,會覺得它們好像是不同的東西
但是對電腦來說,這根本就沒有差別
所以,如果你認為C語言裡,這個東西叫做結構體:
struct SS {
int member1, member2;
};
那其實沒道理說這個東西就不是結構體:
class OO {
public:
int member1, member2;
};
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.35.184.77
※ 編輯: james732 來自: 114.35.184.77 (11/22 02:49)
→
11/22 02:50, , 1F
11/22 02:50, 1F
我也很推 Inside The C++ Object Model 這本書
但是建議找繁體中文版,因為簡體中文的用語真的很不習慣
Object 簡體中文翻譯為「對象」,這個詞我看了好久還是無法適應 XD
不過遺憾的是繁中版超難找,我目前只在大學圖書館看過
簡中版在拍賣市場倒挺容易買的...
※ 編輯: james732 來自: 114.35.184.77 (11/22 02:52)
※ 編輯: james732 來自: 114.35.184.77 (11/22 02:54)
推
11/22 02:56, , 2F
11/22 02:56, 2F
→
11/22 02:57, , 3F
11/22 02:57, 3F
→
11/22 03:01, , 4F
11/22 03:01, 4F
推
11/22 03:02, , 5F
11/22 03:02, 5F
推
11/22 03:03, , 6F
11/22 03:03, 6F
→
11/22 03:04, , 7F
11/22 03:04, 7F
→
11/22 03:06, , 8F
11/22 03:06, 8F
不過 ctor/dtor 是 compiler 自己在適當的地方插入 function
對於結構體本身來說並沒什麼影響?
※ 編輯: james732 來自: 114.35.184.77 (11/22 03:10)
推
11/22 03:33, , 9F
11/22 03:33, 9F
→
11/22 03:36, , 10F
11/22 03:36, 10F
→
11/22 03:37, , 11F
11/22 03:37, 11F
推
11/22 03:43, , 12F
11/22 03:43, 12F
推
11/22 09:40, , 13F
11/22 09:40, 13F
→
11/22 18:05, , 14F
11/22 18:05, 14F
→
11/22 18:05, , 15F
11/22 18:05, 15F
→
11/22 18:11, , 16F
11/22 18:11, 16F
還有一個「宏」,我一直沒辦法把它跟 macro 連在一起...
→
11/22 18:11, , 17F
11/22 18:11, 17F
推
11/22 18:16, , 18F
11/22 18:16, 18F
→
11/22 18:47, , 19F
11/22 18:47, 19F
※ 編輯: james732 來自: 114.35.184.77 (11/22 19:15)
→
11/22 20:23, , 20F
11/22 20:23, 20F
→
11/22 20:23, , 21F
11/22 20:23, 21F
→
11/22 21:52, , 22F
11/22 21:52, 22F
那我把我的意思講完整一點好了
「對於全部都是public member variable並且沒有virtual function的純資料class來說
它跟C的struct是相同的」
其實我要感謝softwind的糾正,因為virtual這個前提真的很重要
雖然原po沒有提到,但還是應該要強調一下
推
11/22 22:33, , 23F
11/22 22:33, 23F
→
11/22 22:34, , 24F
11/22 22:34, 24F
→
11/22 22:34, , 25F
11/22 22:34, 25F
※ 編輯: james732 來自: 114.35.184.77 (11/22 23:58)
推
11/23 00:52, , 26F
11/23 00:52, 26F
→
11/23 00:56, , 27F
11/23 00:56, 27F
→
11/23 00:56, , 28F
11/23 00:56, 28F
推
11/23 01:30, , 29F
11/23 01:30, 29F
→
11/23 02:23, , 30F
11/23 02:23, 30F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章