看板 C_and_CPP 關於我們 聯絡資訊
最近再看用C實做C++的文章, 在C++中: class A { public: int m_x; int m_y; void foo(int n) { m_x = n; } }; 用C來模擬就像這樣: struct A { int m_x; int m_z; }; void foo(A* this_ptr, int n) { this_ptr->m_x = n; } 那在C++中private, protect的member variable和member function 該怎麼用C來實做呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.240.168.201
uranusjr:只能憑良心, 語言本身沒那個功能... 08/29 23:42
uranusjr:不過說真的 C++ 的 protected/private 也是看良心的啊XD 08/29 23:42
tropical72:是有什麼需求非得用 C 實做 OOC 嗎? 08/29 23:48
VictorTom:小弟我看過的作法是, 用了一些macro技巧, 讓你在compile 08/29 23:52
VictorTom:time時, 會直接抓對非法的private element的access報錯; 08/29 23:53
purpose:這不是都交給編譯器負責嗎 08/29 23:53
VictorTom:不過怎麼實作的要回去翻翻看....@_@" 08/29 23:54
elfkiller:http://code.google.com/p/ooc/ 08/30 00:02
tropical72:樓上翻釋的網址,進度大符落後,也是我認為可惜之處。 08/30 00:04
tropical72:!! 收回,似乎和我之前找的不同,附了所有實作碼.. 08/30 00:06
PkmX:上次有人想這樣做 結果就生出了gobject和vala...XD 08/30 00:16
angleevil:如果你有貝爾實驗室神人的熱情和技巧,建議你看ooc這本 08/30 08:56
angleevil:如果只是不會寫程式主管要你做,恩,fire他吧 08/30 08:57
angleevil:如果想有空增加一些技巧,ooc快去看吧 08/30 08:57
amozartea:直接用C++吧... 08/30 12:06
xatier:OOC 那本真的值得一看! 08/30 16:45