Hacker News new | past | comments | ask | show | jobs | submit login

> C++ needs the full definition of a class, including its private members, before you can use its methods.

This is more a limitation of the ABI than the language (and even then, only comes up if you are using multiple inheritance or have private virtual functions). Objective-C had the same problem, and then they introduced the non-fragile ABI: no language change was needed, just a compile flag.

(I do realize that there is some awkwardness in C++ if you attempt to declare these things in that private-decoupling sense; but to me the reason this is most brutal is not hiding of state, where we have solutions already, but being able to add and remove members without having to recompile users.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: