nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

template specialization for pointer-to-type

Von: .rhavin grobert (clqrq@yahoo.de) [Profil]
Datum: 30.06.2008 20:57
Message-ID: <f58f466f-d5f3-4a0c-84ea-8a3ed0b0adb0@e53g2000hsa.googlegroups.com>
Newsgroup: de.comp.lang.iso-c++
guess you have the following:

_________________________________________________
template <class T>
class CQVector
{
public:
// find an element, returns index or -1 if none is found
int find(int id) const;
private:
std::vector<T> m_vec;
};

template <class T>
int CQVector<T>::find(int id) const
{
int iCnt = m_vec.size();
while (iCnt-->0)
{
if (m_vec[iCnt].ID() == id)
break;
}
return iCnt;
}
_________________________________________________

this finds an element in the vector by calling elements fn ID() and
compiles for all structures/classes that have an ID() memeber-fn
returning something comparable to int.


now i also want the possibility to store pointers, eg

CQVector<MyClass*> m_foo;

and need some specialisation that does a...
_________________________________________________

int iCnt = m_vec.size();
while (iCnt-->0)
{
if (m_vec[iCnt]->ID() == id)
break;
}
return iCnt;
_________________________________________________

what syntax is need ed for the specialisation?
something like template<class*T> doesnt work...

TIA, -.rhavin;)

[ Auf dieses Posting antworten ]

Antworten