|
Bas de page | |
---|---|
Auteur | Sujet : initialisation de structure |
Publicité | Posté le 01-12-2011 à 18:56:01 |
gilou ModérateurModzilla | En C, un struct est juste une zone mémoire qui contient des données (et des zones de padding en cas d'alignement).
Message édité par gilou le 01-12-2011 à 21:40:54 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
GrosBocdel | explicitement membre par membre? |
gilou ModérateurModzilla | Exactement comme pour une classe.
Message édité par gilou le 01-12-2011 à 21:59:32 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
GrosBocdel | Je suis obligé d'avoir plein de membres, c'est une structure qui contient toutes les informations d'une journée... Et si je n'écris rien dans le champs il faut qu'il soit à une valeur certaine...
|
jesus_christ votre nouveau dieu | un membre de type std::vector<...> sera automatiquement initialisé à 0 élément par le compilo, pas besoin de le faire toi-même.
|
gilou ModérateurModzilla | Euh, GrosBocdel, si ton struct n'a pas de constructeur, je t'ai donné la solution en une ligne dans mon post, hein...
Message édité par gilou le 01-12-2011 à 22:03:47 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
jesus_christ votre nouveau dieu | ta solution qui consiste à dériver d'une structure pur C (une P.O.D. pour les connaisseur) je la trouve très élégante.
Message édité par jesus_christ le 01-12-2011 à 22:03:14 |
GrosBocdel | gilou: oui. En fait j'ai une structure de base qui vient du C et sur laquelle j'ai rajouté des std::vector.
|
Publicité | Posté le 01-12-2011 à 22:05:03 |
gilou ModérateurModzilla | jesus_christ, parce que ça lui permet d'avoir un constructeur qui fait implicitement tout le boulot? oui en effet.
Message édité par gilou le 01-12-2011 à 22:06:57 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
GrosBocdel | Pourquoi tous les bits à zéro ça ferait pas zéro sur un float?
|
jesus_christ votre nouveau dieu | sur une possible archi très très exotique.
|
gilou ModérateurModzilla |
Les floats, il y a eu tout un tas d'implémentations selon les bécanes. Les normalisations IEEE, c'est relativement récents. Et apparement, il y a eu le cas ou tous les bits à 0 ne signifiait pas 0 (ou en tout cas, c'est un mythe assez tenace).
Message édité par gilou le 01-12-2011 à 22:36:42 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
GrosBocdel | et donc si mes structures sont allouées dynamiquement, je suis foutu? initialisation explicite?
|
jesus_christ votre nouveau dieu | pourquoi foutu ?
|
GrosBocdel | oui mais avec T *t=new T;
Message édité par GrosBocdel le 02-12-2011 à 11:54:20 |
Xavier_OM Monarchiste régicide (fr quoi) | Je rate un truc ou ça ne marche pas cette histoire de constructeur c++ appelant celui de la struct ?
--------------- Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire. |
GrosBocdel | le code n'était pas de moi, mais ici j'ai bien:
|
gilou ModérateurModzilla | Avec le compilo c++ de Digital Mars
--------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
GrosBocdel | ok, je me rends, j'initialise à la main
|
gilou ModérateurModzilla | Euh non, je viens de voir que le compilo de digital mars accepte pas ceci:
--------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
Un Programmeur |
--------------- The truth is rarely pure and never simple (Oscar Wilde) |
gilou ModérateurModzilla |
avec la toute dernière version de mingw que je viens d'installer, donc port de gcc 4.6.1
--------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
Xavier_OM Monarchiste régicide (fr quoi) | Je viens de faire comme toi, upgrade de cygwin de --------------- Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire. |
gilou ModérateurModzilla | J'ai deux versions, et je viens de voir que c'est pas la bonne qui est appelée par défaut. Je vais mettre mon PATH a jour.
Message édité par gilou le 02-12-2011 à 17:40:03 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
jesus_christ votre nouveau dieu | Le standard dit que ça doit faire 0 0 car MyStruct est une POD. Certains compilos peuvent ne pas respecter ce standard.
|
gilou ModérateurModzilla | Oui, mais de toute façon, je vois que le compilo de Digital Mars à l'air à la traine, vu ce qu'il n'a pas fait sur un simple struct.
Message édité par gilou le 04-12-2011 à 10:50:53 --------------- There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! -- |
GrosBocdel |
|
GrosBocdel |
|
jesus_christ votre nouveau dieu | c'est l'implémentation de ton compilo et/ou OS.
|
GrosBocdel | Ha voilà où j'avais déjà vu ça.
|
Publicité | Posté le |
Sujets relatifs | |
---|---|
probleme structure | [résolu] Choix d'une structure pour ajout et recherche rapide |
[VBA]: variable static initialisation | Structure d'un site |
Exercice structure langage c | Structure chainée |
Structure clé , valeur avec ordre et doublons | convertir une structure X509 en format DER. |
[ C#] Initialisation attribut | Initialisation d'un tableau à deux dimensions de structure |
Plus de sujets relatifs à : initialisation de structure |