Si le c++ expose les structures interne, c'est un peu moisi.
It's not a bug, it's a feature! Le fait de n'exposer que des pointeurs force (quasiment) à faire des allocations dans le tas (via malloc typiquement). Exposer les structures internes, ça permet de ne pas faire d'allocation s'il n'y a pas besoin d'en faire. Par exemple, si je fais une classe Vec2 avec deux double: x et y, je n'ai pas envie d'allouer 128 bits à chaque fois que je crée un Vec2, j'ai envie de pouvoir les manipuler directement, sans allocation, de pouvoir faire des additions sans allocation (ce que C++ permet), etc. Et ça, tu ne peux le faire que si tu exposes les structures internes.
[^] # Re: C'est moi ou c'est idiot ?
Posté par rewind (Mastodon) . En réponse au journal Google forke C++. Évalué à 5.
It's not a bug, it's a feature! Le fait de n'exposer que des pointeurs force (quasiment) à faire des allocations dans le tas (via
malloctypiquement). Exposer les structures internes, ça permet de ne pas faire d'allocation s'il n'y a pas besoin d'en faire. Par exemple, si je fais une classeVec2avec deuxdouble:xety, je n'ai pas envie d'allouer 128 bits à chaque fois que je crée unVec2, j'ai envie de pouvoir les manipuler directement, sans allocation, de pouvoir faire des additions sans allocation (ce que C++ permet), etc. Et ça, tu ne peux le faire que si tu exposes les structures internes.