Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zhal
0 / 0 / 0
Регистрация: 07.02.2016
Сообщений: 5
#1

Объявление функции вне шаблонного класса - C++

07.02.2016, 17:21. Просмотров 135. Ответов 0
Метки нет (Все метки)

Есть 2 класса
C++
1
2
3
4
template <class T, class T2 = ..., int C = ...>
class Dyn_array{
    ...
}
и
C++
1
2
3
4
5
6
7
8
template <class T, class T2 = ..., int C = ...>
class Dyn_string{ // не наследуется от массива
    ...
public:
    ...
    Dyn_array<Dyn_string> Separate(int n){ ... }
    ...
}
Перед Dyn_array forward declaration Dyn_string имеется.
Компилятор начал ругаться на use of undefined type C2027, направляя ошибку на Dyn_array. Пробую вынести Separate из класса (объявление не меняю, только убираю тело)
C++
1
2
3
4
5
6
template <class T, class T2, int C>
Dyn_array<Dyn_string<T, T2, C>> Dyn_string<T, T2, C>::Separate(int n){
    Dyn_array<Dyn_string<T, T2, C>> will_return;
    ...
    return will_return;
}
Вылезает ошибка C2244 unable to match function definition by an existing declaration, но и C2027 тоже никуда не делась. Что делать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2016, 17:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Объявление функции вне шаблонного класса (C++):

Объявление шаблонного класса - C++
Как объявить шаблонный класс?

Объявление наследника шаблонного класса - C++
как объявить наследника шаблонного класса, да ещё если он обрамлён собственным пространсвом имён? Вот мой класс: namespace my_complex { ...

Объявление и определение шаблонного класса - C++
Добрый вечер, мастера :) Почему данный код вызывает проблемы у компилятора? // class.h template &lt;typename T&gt; class Name { ...

Как корректно передать в метод шаблонного класса объект шаблонного класса в качестве параметра? - C++
header.h template &lt;class T&gt; class MyVector { public: void swap(MyVector&lt;T&gt;Vector); } template &lt;class T&gt; void...

Возможно ли создание объекта шаблонного класса в функции этого класса? - C++
Доброго времени суток, уважаемые форумчане :) Мне по лабам задали задание - реализовать шаблон контейнера (множество) с операциями...

Объясните пожалуйста объявление функции вне main - C++
#include &lt;iostream&gt; #include &lt;string&gt; bool poly(std::string str) { unsigned int k = str.length(); for(unsigned int i...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2016, 17:21
Привет! Вот еще темы с ответами:

возвращаемые значения функции шаблонного класса A и A<T> - C++
первый листинг template &lt;typename T&gt; class A { public: T a; A&amp; f()

Вызов метода у шаблонного поля, шаблонного класса - C++
Пытаюсь разобраться с шаблонами- задача создать шаблонный класс, у которого есть шаблонное поле. и затем вызывать метод у этого поля. ...

Описание функции шаблонного класса библиотеки в отдельном cpp-файле - C++
Есть библиотека. В файле ARRAYLIST.HPP описан шаблон template &lt;typename _Type&gt; class ArrayList { private: int length; ...

Объявление функции другом класса - C++
Объявил функцию другом класса и в функции обращаюсь к закрытым данным класса,но почему-то не получается из-за того,что нет доступа к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru