Retourner au contenu associé (entrée de forum : Wm4 WildMagic et MinGW)
Posté par lem__mel le 04 septembre 2009 à 19:20. En réponse au message Wm4 WildMagic et MinGW. Évalué à 3.
#ifndef TEMPLATE_H #define TEMPLATE_H #include <vector> template <class T> class MonTemplate : public std::vector<T> { public: MonTemplate(); MonTemplate(int n); MonTemplate(int n, const T& t); MonTemplate(const MonTemplate<T>&v); MonTemplate(const std::vector <T> &v); ~MonTemplate(); MonTemplate& operator<<(const T& right); MonTemplate& operator+=(const MonTemplate<T>&v); }; #include "MonTemplate.tpp" #endif
template <class T> MonTemplate<T>::MonTemplate() : std::vector<T>(){} template <class T> MonTemplate<T>::MonTemplate(int n) :std::vector<T>(n){} template <class T> MonTemplate<T>::MonTemplate(int n, const T& t) :std::vector<T>(n,t){} template <class T> MonTemplate<T>::MonTemplate(const MonTemplate<T>&v) :std::vector<T>(v){} template <class T> MonTemplate<T>::MonTemplate(const std::vector<T> &v) :std::vector<T>(v){} template <class T> MonTemplate<T>::~MonTemplate() {} template <class T> MonTemplate<T>& MonTemplate<T>::operator<<(const T& right) { this->push_back(right); return *this; } template <class T> MonTemplate<T>& MonTemplate<T>::operator+=(const MonTemplate<T>&v) { this->insert(this->end(), v.begin(), v.end()); return *this; }
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: une piste
Posté par lem__mel . En réponse au message Wm4 WildMagic et MinGW. Évalué à 3.
as-tu écrit correctement ton template ? en voici un :
MonTemplate.hpp
-------------------------------------------------
#ifndef TEMPLATE_H
#define TEMPLATE_H
#include <vector>
template <class T>
class MonTemplate : public std::vector<T>
{
public:
MonTemplate();
MonTemplate(int n);
MonTemplate(int n, const T& t);
MonTemplate(const MonTemplate<T>&v);
MonTemplate(const std::vector <T> &v);
~MonTemplate();
MonTemplate& operator<<(const T& right);
MonTemplate& operator+=(const MonTemplate<T>&v);
};
#include "MonTemplate.tpp"
#endif
-------------------------------
MonTemplate.tpp
-------------------------------
template <class T>
MonTemplate<T>::MonTemplate() : std::vector<T>(){}
template <class T>
MonTemplate<T>::MonTemplate(int n) :std::vector<T>(n){}
template <class T>
MonTemplate<T>::MonTemplate(int n, const T& t) :std::vector<T>(n,t){}
template <class T>
MonTemplate<T>::MonTemplate(const MonTemplate<T>&v) :std::vector<T>(v){}
template <class T>
MonTemplate<T>::MonTemplate(const std::vector<T> &v) :std::vector<T>(v){}
template <class T>
MonTemplate<T>::~MonTemplate() {}
template <class T>
MonTemplate<T>& MonTemplate<T>::operator<<(const T& right)
{
this->push_back(right);
return *this;
}
template <class T>
MonTemplate<T>& MonTemplate<T>::operator+=(const MonTemplate<T>&v)
{
this->insert(this->end(), v.begin(), v.end());
return *this;
}