razuki
Messages postés242Date d'inscriptionlundi 17 décembre 2007StatutMembreDernière intervention 5 décembre 2012
-
4 avril 2011 à 18:02
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023
-
4 avril 2011 à 19:08
Bonjour,
j'aimerais savoir comment je peux initialiser une structure ( en dehors de la déclaration ) :
En effet, je déclare d'abord la structure en faisant :
certificate<string> gMyCert;
Cet objet certificat est accessible depuis n'importe quelle fonction de mon_fic.cpp
puis j'aimerais l'initialiser dans une fonction qui se trouve toujours dans mon_fic.cpp :
error: no match for call to ‘(isl::certificate<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >) (X509*&)’
Je ne comprend pas ce qui se passe. Il me dit no match for call alors que j'ai bien un constructeur certificate(X509* cert). Voici la définition de ma structure certificate :
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 4 avril 2011 à 19:08
certificate<string> gMyCert; => certificate<string>* gMyCert;
Tu ne peux pas intialiser deux fois un objet.
"certificate<string> gMyCert;" équivaut à peu près à "certificate<string> gMyCert();" et construit donc l'objet avec le constructeur par défaut.
PS: Si tu as une variable globale, en C++, pose toi des questions sur la qualité de ton code.
________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfoliohttp://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question