/
Forside
/
Teknologi
/
Udvikling
/
C/C++
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
C/C++
#
Navn
Point
1
BertelBra..
2425
2
pmbruun
695
3
Master_of..
501
4
jdjespers..
500
5
kyllekylle
500
6
Bech_bb
500
7
scootergr..
300
8
gibson
300
9
molokyle
287
10
strarup
270
< class > vs. < typemname >
Fra :
Ukendt
Dato :
07-12-02 05:33
Hej
Jeg er lige kommet til Templates i min C++-bog.
Jeg har læst kapitlet igennem flere gange, men har dog stadig ikke
luret hvad forskellem på < class > og < typename > er?
Er der én der kan hjælpe mig.
Mvh
Jesper
Mogens Hansen (
07-12-2002
)
Kommentar
Fra :
Mogens Hansen
Dato :
07-12-02 13:16
<Neo> wrote in message news:asi2vu4f73a8ooei4m42k29pnjhkur2g6s@4ax.com...
> Hej
>
> Jeg er lige kommet til Templates i min C++-bog.
> Jeg har læst kapitlet igennem flere gange, men har dog stadig ikke
> luret hvad forskellem på < class > og < typename > er?
Man bruger "typename T" til at fortælle til at fortælle compileren at "der
findes en type ved navn T".
Især bruger man "typename" for at angive afhængige typer:
template <class T> void foo(T& t)
{
typename T::iterator i = v.begin()
//...
}
For at erklære en template er der frit valg mellem brug af "class" og
"typename":
template <class T> void foo();
template <typename T> void foo();
Venlig hilsen
Mogens Hansen
Claus Rasmussen (
07-12-2002
)
Kommentar
Fra :
Claus Rasmussen
Dato :
07-12-02 23:39
Neo <> wrote:
> Jeg er lige kommet til Templates i min C++-bog.
> Jeg har læst kapitlet igennem flere gange, men har dog stadig ikke
> luret hvad forskellem på < class > og < typename > er?
Der er ingen forskel. Da man opfandt templates var 'typename' endnu
ikke opfundet, og så valgte man at genbruge 'class'. Det var så lidt
åndssvagt at skrive 'template <class T>' når T i en konkret sammen-
hæng kunne være en 'int, der jo ikke er en klasse, så da man senere
i en anden sammenhæng opfandt 'typename' besluttede man sig for, at
gøre den gamle skade god igen ved også at tillade 'typename' i tem-
plate konstruktioner.
Kort sagt: Brug 'typename'.
-Claus
Søg
Alle emner
Teknologi
Udvikling
C/C++
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177558
Tips :
31968
Nyheder :
719565
Indlæg :
6408924
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.