Bonjour ;
est ce qu'il y a un autre moyen,autre que les classes, pour déclarer des structures ?
Bonjour ;
est ce qu'il y a un autre moyen,autre que les classes, pour déclarer des structures ?
Et bien il y a struct qui est ''identique'' à class sauf que par défaut tous les membres sont public.
A ma connaissance, il existe pas d'autres ''structures''.
Si tu veux conserver plusieurs variables du même type, tu peux utiliser tous les conteneurs de la STL (std::list, std::vector ...)
Bonjour,
je serais curieux de savoir ce que tu as derrière la tête.
Les class (ou struct) sont en effet très bien pour aggréger des données de différents types entre elles. Pourquoi vouloir autre chose alors ?
Si par structures tu voulais parler de collection (forcément homogène), alors il faut s'intéresser aux containers type vector, list, map (...)
Si ton idée ne rentre dans aucun des 2 cas ci-dessus, je sèche.
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Salut,
Les classes et les structures, en C++, c'est kif-kif, hormis la visibilité par défaut des différents membres...
Mais qu'entends-tu par "y a-t-il un autre moyen que les classes"
Veux tu pouvoir déclarer des structures "C styles" (ce que l'on appelle de type POD)
Veux tu autre chose de particulier
Dis nous ce que tu cherches à faire, nous te dirons comment t'y prendre![]()
A méditer: La solution la plus simple est toujours la moins compliquée
Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 février 2014
mon tout nouveau blog
Bonsoir,
Je croyais que struct est une particularité de C .
Sinon, je voulais éviter de travailler avec les classes parce qu'avec visual studio chaque classe doit être dans un fichier à part et je me disais que ça sera plus rapide de déclarer les structures dans le main ...
Quand tu n'as que 1/2 classes, ça passe encore.
Mais en C++ on arrive très vite à avoir plus d'une 10ène de classes (et encore je suis gentil).
Il est donc nécessaire de bien séparer chaque classe pour se retrouver dans son code.
Pas forcement. Même avec Visual Studio tu peux tout mettre en vrac dans le même fichier (c'est pas ce qu'il y a de plus propre par contre...).avec visual studio chaque classe doit être dans un fichier à part
C'est juste que si tu cré une nouvelle classe en faisant "Add->class" sur ton projet, il te génère un fichier .h et un .cpp, ce qui est en général la bonne manière de faire.
La struct existe bien en C, mais elle est transposée au C++.
La struct C++ est une copie quasi conforme d'une class ayant les attributs en visibilité public par défaut, mais permet le même principe d'héritage etc. Mais il ne s'agira plus de POD si on se met à utiliser tout cela (merci Koala, je recherchais ce terme^^).
Enfin, un fichier par class (en fait 2 .h .cpp) est une bonne pratique mais pas du tout une obligation.
Tu peux très bien avoir un unique .h avec 100 class et leur implémentation, sans .cpp, sans que celles-ci soient template.
Est-ce une bonne pratique ? certainement pas.
De même une struct dans une méthode ne sera utilisable que dans cette méthode. Ca peut avoir une utilité, mais ça reste du cas particulier. Le "problème" générale de la portée/visibilité en fait.
Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
Un peu de programmation réseau ?
Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.
Partager