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

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

Войти
Регистрация
Восстановить пароль
 
anti-k
227 / 75 / 23
Регистрация: 17.07.2015
Сообщений: 774
Завершенные тесты: 1
#1

Поясните по шаблонам - C++

17.01.2016, 18:30. Просмотров 147. Ответов 2
Метки нет (Все метки)

Читаю Солтера, а именно шаблоны.
Наткнулся на "некоторые компиляторы требуют что бы определения шаблонных методов помещались в определения класса встраиваемым образом", у меня VS15(если бы я был прилежным новичком и пользовался компилятором был бы умнее и матерей, но пока как есть), так вот вызов шаблонного метода не видит private полей, в то время как обычный метод шаблонного класса все ест. Если сделать public, тоже все чикает и брякает. Это у меня ошибка где то еще или в визуал надо реализовать такие вещи в классе? вот объявление класса(примерно как у Солтера)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using namespace std;
template<typename T>
class grid
{
public:
    grid(int intWidth= kDefaultWidth,int inHeight=kDefaultHeight);
    grid(const grid<T>&src);    
    template<typename E>
    grid(const grid<E>&src)
    grid<T>&operator=(const grid<T>&rhs);
    template<typename E>
    grid<T>&operator=(const grid<E>&rhs);
    void setElementAt(int x, int y, const T& inElem);
    T&getElementAt(int x, int y);
 
    const T& getElementAt(int x, int y)const;
 
    int getHeight()const { return mHeight; }
    int getWidht()const { return mwidth; }  
    ~grid();
    static const int kDefaultWidth = 10;
    static const int kDefaultHeight = 10;
private:
    void copyFrom(const grid<T>&src);
    template<typename E>
    void copyFrom(const grid<E>&src);
    T**mCells;
    int mHeight, mWidth;
 
};
Добавлено через 25 минут
Разобрался. Это была вспышка моей шизофрении, прошу модераторов удалить этот топик.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2016, 18:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поясните по шаблонам (C++):

программка по шаблонам - C++
Пытаюсь конвертировать контайнер класс в шаблон. Укажите, пожалуйста, на ошибки в программе: Header file &quot;sequence4.h&quot; #ifndef...

вопрос по шаблонам - C++
начал разбираться в шаблонах и что то не получается вот код без шаблона все работает #include&lt;iostream&gt; #include&lt;string&gt; ...

Необходим совет по шаблонам - C++
Доброго всем времени суток! Изучаю шаблоны - по ходу дела вопросы на понимание темы: 1. Учитывая прототип для шаблон функции: ...

Глупый вопрос по шаблонам - C++
Доброе время суток! Я достаточно опытный программист Java, но жизнь, как говорится, заставила переквалифицироваться на C++, причем,...

Передача параметров по значению и по константным ссылкам применительно к шаблонам - C++
Такс... С xvalue разобрались, вопрос следующий. Допустим у меня есть шаблон некой операции. Например template&lt;typename T&gt; ...

Поясните считывание - C++
/*Считывание первой матрицы*/ //создание матрицы float**firstMatrix = new float*; //считывание матрицы const char separator...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6382 / 5947 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
17.01.2016, 19:25 #2
anti-k,
П.4.11.Правил гласит:
Если вопрос был решен вами самостоятельно, отпишите об этом в своей теме - есть и другие люди, которые столкнутся с той же проблемой, и им поможет ваш ответ.
0
anti-k
227 / 75 / 23
Регистрация: 17.07.2015
Сообщений: 774
Завершенные тесты: 1
17.01.2016, 20:34  [ТС] #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
zss, Ok Сергей Сергеевич,
Значится проблема в следующем:
Как говорят в Одессе" Дело было не в бабине - бобибоб сидел в кабине "(Visual не виноват);
Шаблонные параметры не являющиеся типами, становятся частью спецификации реализуемых объектов
(о чем в принципе пишут всевозможные печатные и не только издания, но я этого не замечал).
Иными словами
C++
1
2
3
4
5
6
7
8
9
10
11
template<typename T,int a,int b>
class ZZZ
{
...
}
ZZZ<int,10,10>a;
и
ZZZ<int,10,11>b;
РАЗНЫЕ  типы!!
 
В общем так то(не знаю кому это поможет).
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2016, 20:34
Привет! Вот еще темы с ответами:

Поясните задачу С++ - C++
Здравствуйте, формучане! Есть задача: вычислить значение функции y для значений параметра a с шагом по x, равным dx Исходные данные: ...

Поясните за рекурсию - C++
Учу язык на одном из сайтов, столкнулся с таким примером программы с рекурсией: рекурсия в C++C++ #include &lt;iostream&gt; using...

поясните по #define - C++
У меня есть super class Animals и два подкласса Cats и Birds крайне похожие в реализации. Так вот хочу сделать так: в файле &quot;Birds.h&quot;...

Поясните по сериализации - C++
В boost::serialization Нужно слить мап в файл. Простите за тупой вопрос, но нужно прописывать сериализацию для каждого класса...


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

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

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