Quand utiliser class et quand struct en C++ ? Règles et bonnes pratiques
Bonjour à tous ! J'ai récemment commencé à apprendre le C++ et je suis confus quant au choix entre class et struct. Apparemment, en C++, ils sont presque identiques, mais je vois que les programmeurs expérimentés les utilisent différemment. Par exemple, j'ai écrit ce code pour un point dans le plan :
```cpp
struct Point {
int x;
int y;
};
class Circle {
private:
int radius;
public:
Circle(int r) : radius(r) {}
int getRadius() { return radius; }
};
```
Mais ensuite j'ai vu quelqu'un faire ceci :
```cpp
class Point2 {
public:
int x;
int y;
};
```
Et je ne comprends pas — pourquoi utiliser class si tout est public ? Et inversement, pourquoi ne pas faire un struct avec des champs privés et des méthodes ?
J'ai entendu parler d'une "règle de base" (rule of thumb), mais je ne trouve pas d'explication claire. Quand dois-je choisir struct, et quand class ? Y a-t-il des conventions ou est-ce simplement une question de goût ? Je serais reconnaissant pour une réponse détaillée avec des exemples !
<<>>