C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Problème de compilation

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French)
View previous topic :: View next topic  
Author Message
Guillaume GOURDIN
Guest





PostPosted: Thu Dec 11, 2008 11:06 pm    Post subject: Problème de compilation Reply with quote



Bonjour,

je fais face à un problèlme de compilation que je ne saisis pas. En
effet, le code suivant ne compile pas :

void foo()
{
struct toto
{
int bar1;
int bar2;
}

vector<toto> v
};

alors que le code suivant compile bien :

struct toto
{
int bar1;
int bar2;
}

void foo()
{
vector<toto> v
};

Pourquoi le fait de sortir ma struct de la fonction permet à omn code de
compiler?

Merci pour votre aide.
Back to top
Jean-Marc Bourguet
Guest





PostPosted: Thu Dec 11, 2008 11:09 pm    Post subject: Re: Problème de compilation Reply with quote



Guillaume GOURDIN <trash (AT) hotmail (DOT) com> writes:

Quote:
Bonjour,

je fais face à un problèlme de compilation que je ne saisis pas. En effet,
le code suivant ne compile pas :

void foo()
{
struct toto
{
int bar1;
int bar2;
}

vector<toto> v
};

alors que le code suivant compile bien :

struct toto
{
int bar1;
int bar2;
}

void foo()
{
vector<toto> v
};

Pourquoi le fait de sortir ma struct de la fonction permet à omn code de
compiler?

Parce que les parametres templates doivent etre a linkage externe.

--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Back to top
Guillaume GOURDIN
Guest





PostPosted: Thu Dec 11, 2008 11:13 pm    Post subject: Re: Problème de compilation Reply with quote



Quote:
Pourquoi le fait de sortir ma struct de la fonction permet à omn code de
compiler?

Parce que les parametres templates doivent etre a linkage externe.

C'est bien ce que je pensais. En fait, vector ne connait pas la struct
parce qu'elle est locale à la fonction.

Merci pour ta réponse rapide.
Back to top
Fabien LE LEZ
Guest





PostPosted: Thu Dec 11, 2008 11:47 pm    Post subject: Re: Problème de compilation Reply with quote

On 11 Dec 2008 18:09:47 +0100, Jean-Marc Bourguet <jm (AT) bourguet (DOT) org>:

Quote:
Parce que les parametres templates doivent etre a linkage externe.

D'ailleurs, c'est ce que le message d'erreur aurait dû indiquer.
Back to top
Guillaume GOURDIN
Guest





PostPosted: Fri Dec 12, 2008 11:30 pm    Post subject: Re: Problème de compilation Reply with quote

Quote:
Parce que les parametres templates doivent etre a linkage externe.

D'ailleurs, c'est ce que le message d'erreur aurait dû indiquer.

Le message d'erreur n'était pas forcément d'une clarté exemplaire (comme
souvent avec les templates semble t'il).
Back to top
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French) All times are GMT
Page 1 of 1

 
 


Powered by phpBB © 2001, 2006 phpBB Group