Juste pour �tre s�r, la seule et unique diff�rence entre struct et class est que, par d�faut, les membres sont "public" dans struct et "private" dans class. Correct ?
Juste pour �tre s�r, la seule et unique diff�rence entre struct et class est que, par d�faut, les membres sont "public" dans struct et "private" dans class. Correct ?
et l'h�ritage par d�faut qui est publique avec les struct et priv� avec les class
C'est valable tant que tu programmes en vrai C++.
En .Net, c'est plus compliqu�.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Y'as pas une diff�rence au niveau de la copie par hasard en .NET ?
Genre structA=structB n'est pas trait� de la m�me mani�re que ClassA=ClassB ?
C'est �a. Le terme "structure" en .Net (Structure en VB, struct en C#, value class ou value struct en C++/CLI) d�signe un type valeur, qui:
- Est forc�ment POD (constructeur par d�faut et constructeur de copie sont forc�ment ceux g�n�r�s par le compilo, pas de destructeur), et donc blittable
- Peut contenir des r�f�rences, par contre
- Est allou� directement "sur place" dans la pile ou dans un autre type, plut�t qu'ind�pendamment sur le tas (sauf boxing)
- Est compl�tement clon� par l'op�rateur =
- Est le plus souvent immuable (mais assignable). On peut faire un type valeur avec des modifieurs, mais �a n'est pas conseill�.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
En C++ la seul diff�rence entre une class et une struct est :
La structure n'a pas les notions de private et de protected, d'o� le fait que �a soit par d�faut en public.
Elle a ces notions, c'est juste que par d�faut, public s'applique pour une struct.
Est valide.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8 struct C { protected: int i; private: int j; };
Ma session aux Microsoft TechDays 2013 : D�velopper en natif avec C++11.
Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage � la d�couverte d'un nouveau monde
Je donne des formations au C++ en entreprise, n'h�sitez pas � me contacter.
Partager