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

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

Войти
Регистрация
Восстановить пароль
 
TopLoader
42 / 42 / 4
Регистрация: 10.12.2011
Сообщений: 128
#1

Функция-член шаблонного класса - C++

13.09.2012, 19:21. Просмотров 571. Ответов 3
Метки нет (Все метки)

Как правильно объявить функцию-член шаблонного класса?

Класс:
C++
1
2
3
4
5
6
7
8
9
template <class SType> class Set {
        int len;                        // число членов
        SType members[MaxSize];         // массив, содержащий множество
 
        /* Функция find() закрыта, потому что она
           не используется вне класса Set. */
        int find(SType data);               // найти элемент
.........
};
Функция:
C++
1
2
3
4
5
6
7
8
9
int Set::find(SType data) {
    int i;
 
    for(i=0; i<len; i++)
        if(members[i]==data)
            return i;
 
    return -1;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2012, 19:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция-член шаблонного класса (C++):

Как корректно передать в метод шаблонного класса объект шаблонного класса в качестве параметра? - 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++
Не компилируется. Подскажите правильный синтаксис. template&lt;typename T&gt; class A; template&lt;typename T, typename ... Args&gt; void func(A&lt;T&gt;...

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

Функция шаблонного класса возвращающая тип, определенный классом - C++
ошибка. говорит, что не ожидал увидеть идентификатор some(C2061)template&lt;typename T&gt; class a{ public: enum some{one,two}; some...

Функция указатель на класс, определенный внутри шаблонного класса - C++
Доброго времени суток! Помогите пожалуйста разобрать со следующим кодом: template &lt;class T&gt; class List{ class Node{ public: ...

Перегрузка операций: friend-функция или функция-член класса - C++
Здравствуйте, меня интересует вопрос, в чем разница при перегрузке операторов через operator и friend. Вот к примеру такой код. class...

3
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
13.09.2012, 19:23 #2
TopLoader,
C++
1
2
template<class SType>
int Set<SType>::find(SType data) { }
Соответственно описывать функцию надо в хедере
0
TopLoader
42 / 42 / 4
Регистрация: 10.12.2011
Сообщений: 128
13.09.2012, 19:44  [ТС] #3
ForEveR, хм, а можно по-подробнее? Получается,нужно в самом классе функцию-член описывать?
И вдогонку: с дружественными функциями как поступать?

Просто я с шаблонами еще только знакомлюсь и до конца еще не понял, как с ними работать...
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
13.09.2012, 20:00 #4
TopLoader, Можно в классе, можно после класса. В классе соответственно будет просто

C++
1
int find(SType) { }
соответственно параметр и определение подставляйте сами. Если после класса - то тот вариант, который я давал до того.
По поводу дружественных - пример приведите о чем вы спрашиваете конкретно.
1
13.09.2012, 20:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.09.2012, 20:00
Привет! Вот еще темы с ответами:

Сам вопрос: почему функция-член одного класса не вызывается из функции-члена другого класса? - C++
//Щас всё объясню. Так, имеем два класса, в одном я определил функцию-член. Все конструкторы и прочее //опущены для уменьшения кода ...

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

Не функция-член класса - C++
Фрагмент из книги, об дружественной функции operator&lt;&lt;: &quot;Обратите внимание, что она не является функцией-членом класса String&quot;. Из чего...

Член-функция класса не работает - C++
Доброго вечера! Только что написал вот такой несложный класс, который определяет две характеристики предмета (вес и стоимость)....


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

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

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