Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Конструктор копирования в шаблоне


Автор: CaLaT 26.5.2009, 20:49
Код

template <typename Tip> class Vektor
{
    Tip *data;
    int size;
    void SetSize(int _size);
public:
    Vektor() : data(NULL), size(0) {};
    Vektor(int _size);
    ~Vektor();
    Vektor::Vektor(const Vektor &Value);
    Vektor & operator = (const Vektor & Value);
    Tip & operator [] (const int & Index);
    void Insert(int Index, Tip Value);
    void Add(Tip Value);
    void DeleteLast();
    void Delete();
};
template<typename Tip> Vektor<Tip>::Vektor(const Vektor &Value)
{
    ;
}


Хочу описать кк, а компилятор мне - "error C2244: 'Vektor<Tip>::Vektor<Tip>::Vektor<Tip>' : unable to resolve function overload"
Помогите пожалуйста

пс: Пишу на VC6.0

Автор: azesmcar 26.5.2009, 21:16
Цитата(CaLaT @  26.5.2009,  20:49 Найти цитируемый пост)
template<typename Tip> Vektor<Tip>::Vektor(const Vektor &Value)

Код

template<typename Tip> Vektor<Tip>::Vektor(const Vektor<Tip>& Value)


Добавлено через 16 секунд
Цитата(CaLaT @  26.5.2009,  20:49 Найти цитируемый пост)
пс: Пишу на VC6.0 

сочувствую

Автор: CaLaT 26.5.2009, 21:27
Цитата(azesmcar @  26.5.2009,  21:16 Найти цитируемый пост)
template<typename Tip> Vektor<Tip>::Vektor(const Vektor<Tip>& Value)


Таже самая ошибка


Цитата(azesmcar @  26.5.2009,  21:16 Найти цитируемый пост)
сочувствую

А чем плох vc60? 

Автор: azesmcar 26.5.2009, 21:31
Цитата(CaLaT @  26.5.2009,  21:27 Найти цитируемый пост)
Таже самая ошибка

Разумеется, в обявлении тоже надо было подправить.

Код

template <typename Tip> class Vektor
{
    Tip *data;
    int size;
    void SetSize(int _size);
public:
    Vektor() : data(NULL), size(0) {};
    Vektor(int _size);
    ~Vektor();
    Vektor(const Vektor<Tip> &Value);
    Vektor & operator = (const Vektor & Value);
    Tip & operator [] (const int & Index);
    void Insert(int Index, Tip Value);
    void Add(Tip Value);
    void DeleteLast();
    void Delete();
};
template<typename Tip> Vektor<Tip>::Vektor(const Vektor<Tip> &Value)
{
}

вот весь код

Цитата(CaLaT @  26.5.2009,  21:27 Найти цитируемый пост)
А чем плох vc60?  

слабо поддерживает стандарт.

Автор: andrew_121 26.5.2009, 21:43
Цитата(CaLaT @  26.5.2009,  20:49 Найти цитируемый пост)
class Vektor

Вот так назвал smile  smile  smile  smile  smile  smile 
Цитата(CaLaT @  26.5.2009,  20:49 Найти цитируемый пост)
Vektor::Vektor(const Vektor &Value);

А это что? smile 

И добавь конструктор копирования.

Автор: CaLaT 26.5.2009, 21:47
azesmcar, Спасибо))

andrew_121, Ну это какбы и был мой кк)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)