* C++ templates @ 2003-01-12 9:05 erwan ancel 2003-01-12 10:25 ` C++ templates: precisions erwan ancel ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: erwan ancel @ 2003-01-12 9:05 UTC (permalink / raw) To: gcc-help Hi, Does anybody know where I can find a detailed description on templates syntax in C++ ? Thanks. Erwan ^ permalink raw reply [flat|nested] 7+ messages in thread
* C++ templates: precisions 2003-01-12 9:05 C++ templates erwan ancel @ 2003-01-12 10:25 ` erwan ancel 2003-01-12 11:05 ` Sebastian Huber 2003-01-12 13:27 ` LLeweLLyn Reese 2003-01-13 9:10 ` C++ templates Fabio Mazzone 2003-01-13 13:22 ` Oliver Kullmann 2 siblings, 2 replies; 7+ messages in thread From: erwan ancel @ 2003-01-12 10:25 UTC (permalink / raw) To: gcc-help well, this is my problem: I would like to make a template class that owns a set of elements that have the type of one of the class parameters. And it doesn't compile... example: #include <set> template <class T> class A { public: A(); B(); std::set<T> _list; }; the compiler's output tells that the type T is not defined... Well, of course, but it will be defined when the template will be instanciated. So it should be possible... Does anybody know a solution to my problem? ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: C++ templates: precisions 2003-01-12 10:25 ` C++ templates: precisions erwan ancel @ 2003-01-12 11:05 ` Sebastian Huber 2003-01-12 11:25 ` erwan ancel 2003-01-12 13:27 ` LLeweLLyn Reese 1 sibling, 1 reply; 7+ messages in thread From: Sebastian Huber @ 2003-01-12 11:05 UTC (permalink / raw) To: gcc-help Hello! On Sunday 12 January 2003 11:25, erwan ancel wrote: > well, this is my problem: > > I would like to make a template class that owns a set of elements that have > the type of one of the class parameters. And it doesn't compile... > example: > > #include <set> > template <class T> 'template<typename T>' may fix your problem. > class A > { > public: > A(); > B(); > std::set<T> _list; > }; > > the compiler's output tells that the type T is not defined... Well, of > course, but it will be defined when the template will be instanciated. So > it should be possible... > Does anybody know a solution to my problem? ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: C++ templates: precisions 2003-01-12 11:05 ` Sebastian Huber @ 2003-01-12 11:25 ` erwan ancel 0 siblings, 0 replies; 7+ messages in thread From: erwan ancel @ 2003-01-12 11:25 UTC (permalink / raw) To: gcc-help Yes, you're right. But why is it ?? Does the compiler go further to 'cache' a pre-compilation of the template in case of class ? ----- Original Message ----- From: "Sebastian Huber" <sebastian-huber@web.de> To: <gcc-help@gcc.gnu.org> Sent: Sunday, January 12, 2003 12:02 PM Subject: Re: C++ templates: precisions Hello! On Sunday 12 January 2003 11:25, erwan ancel wrote: > well, this is my problem: > > I would like to make a template class that owns a set of elements that have > the type of one of the class parameters. And it doesn't compile... > example: > > #include <set> > template <class T> 'template<typename T>' may fix your problem. > class A > { > public: > A(); > B(); > std::set<T> _list; > }; > > the compiler's output tells that the type T is not defined... Well, of > course, but it will be defined when the template will be instanciated. So > it should be possible... > Does anybody know a solution to my problem? ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: C++ templates: precisions 2003-01-12 10:25 ` C++ templates: precisions erwan ancel 2003-01-12 11:05 ` Sebastian Huber @ 2003-01-12 13:27 ` LLeweLLyn Reese 1 sibling, 0 replies; 7+ messages in thread From: LLeweLLyn Reese @ 2003-01-12 13:27 UTC (permalink / raw) To: erwan ancel; +Cc: gcc-help "erwan ancel" <erwan.ancel@free.fr> writes: > well, this is my problem: > > I would like to make a template class that owns a set of elements that have > the type of one of the class parameters. And it doesn't compile... > example: > > #include <set> > template <class T> > class A > { > public: > A(); > B(); set_t.cc:7: ISO C++ forbids declaration of `B' with no type That's the only error I get for your code. Take a 'B()' and it disappears. > std::set<T> _list; > }; > > the compiler's output tells that the type T is not defined... Well, > of I get no such error message. I tried with gcc 2.95.3, and gcc 3.2.1 . > course, but it will be defined when the template will be instanciated. So it > should be possible... > Does anybody know a solution to my problem? ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: C++ templates 2003-01-12 9:05 C++ templates erwan ancel 2003-01-12 10:25 ` C++ templates: precisions erwan ancel @ 2003-01-13 9:10 ` Fabio Mazzone 2003-01-13 13:22 ` Oliver Kullmann 2 siblings, 0 replies; 7+ messages in thread From: Fabio Mazzone @ 2003-01-13 9:10 UTC (permalink / raw) To: erwan ancel, gcc-help i suggest you to buy: bjarne stroustrap's "the c++ programming language" that created such a language. Other case try to look on the net (google....). have fun! fa ----- Original Message ----- From: "erwan ancel" <erwan.ancel@free.fr> To: <gcc-help@gcc.gnu.org> Sent: Sunday, January 12, 2003 10:05 AM Subject: C++ templates > Hi, > Does anybody know where I can find a detailed description on templates > syntax in C++ ? > > Thanks. > > > Erwan > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: C++ templates 2003-01-12 9:05 C++ templates erwan ancel 2003-01-12 10:25 ` C++ templates: precisions erwan ancel 2003-01-13 9:10 ` C++ templates Fabio Mazzone @ 2003-01-13 13:22 ` Oliver Kullmann 2 siblings, 0 replies; 7+ messages in thread From: Oliver Kullmann @ 2003-01-13 13:22 UTC (permalink / raw) To: gcc-help > Hi, > Does anybody know where I can find a detailed description on templates > syntax in C++ ? > > Thanks. > > > Erwan > The best you can find specifically on templates is @Book{JV2002, author = {David Vandevoorde and Nicolai M. Josuttis}, title = {C++ Templates: The Complete Guide}, publisher = {Addison-Wesley}, year = 2002, address = {Boston}, month = {November}, note = {ISBN 0-201-73484-2; QA76.73.C153 V37 2003}, annote = {Vorhanden.} } also a very important source for generic programming is @Book{CE2000, author = {Krzysztof Czarnecki and Ulrich W. Eisenecker}, title = {Generative Programming}, publisher = {Addison Wesley}, year = 2000, address = {Boston}, note = {ISBN 0-201-30977-7; QA76.624.C93 2000}, annote = {Vorhanden.} } (covering a much broader range); and finally a lot of interesting material is contained in @Book{Al2001, author = {Andrei Alexandrescu}, title = {Modern C++ Design}, publisher = {Addison-Wesley}, year = 2001, series = {The C++ In-Depth Series}, address = {Boston}, month = {June}, note = {ISBN 0-201-70431-5, QA76.73.C153 A42 2001}, annote = {Vorhanden.} } Oliver ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2003-01-13 13:22 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2003-01-12 9:05 C++ templates erwan ancel 2003-01-12 10:25 ` C++ templates: precisions erwan ancel 2003-01-12 11:05 ` Sebastian Huber 2003-01-12 11:25 ` erwan ancel 2003-01-12 13:27 ` LLeweLLyn Reese 2003-01-13 9:10 ` C++ templates Fabio Mazzone 2003-01-13 13:22 ` Oliver Kullmann
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).