Re: templating
- From: Bernd Robertz <bernd robertz cssweb de>
- To: Robert Rehammar <robert rehammar se>
- Cc: gtkmm-list gnome org
- Subject: Re: templating
- Date: Sun, 21 Dec 2008 12:07:59 +0100
Hello,
ok, if I got your problem, you ran into the problem, that you can't pass
arguments to the template class, because the template class itself is a
argument.
You have to write a method wich forks the additional parameters like
this:
myNodeClass<tClass> sometpl;
sometpl.push_back("parameter"); // where parameter is type string
So the constructor of tClass don't have parameters.
Just have a look at
http://www.cppreference.com/wiki/stl/vector/vector_constructors
There you can define wich type of template the vector should contain,
but the template data is later.
If I have missunderstood your problem, or I'm generally wrong, just
correct Me. :-)
Greetings
Bernd
Am Sonntag, den 21.12.2008, 08:52 +0100 schrieb Robert Rehammar:
> Hi all,
>
> I'm writing a small program and has bumped in to a problem. It is
> probably actually C++ related, but since it should be a problem lot's of
> people here face I'll ask here. I want to do the following:
>
> class tClass {
> tClass (string s) {...};
> ...
> }
>
> class myNodeClass : NodeTree<tClass> {
> myNodeClass (string s) :
> NodeTree<tClass> {
> ...
> };
> }
>
> But this won't compile as the template for NodeTree, tClass, requires a
> parameter (the string s) and I simply can't figure out how to pass it to
> the template.
>
> Writing the constructor as
>
> myNodeTree (string s): NodeTree<tClass (s)> won't compile, complaining
> that s can't appear in a constant expression, so this seem so suggest
> that I can't template with a class that require any parameters for
> initiation...
>
> Thanks in advance!
>
> \\Robert Rehammar
>
> _______________________________________________
> gtkmm-list mailing list
> gtkmm-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtkmm-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]