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

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

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

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

17.01.2016, 18:30. Просмотров 145. Ответов 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 минут
Разобрался. Это была вспышка моей шизофрении, прошу модераторов удалить этот топик.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2016, 18:30     Поясните по шаблонам
Посмотрите здесь:

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

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

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

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

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

Поясните элементарность - C++
Я c++ еще не начанал учить, по этому элементарный вопрос, просьба не троллить. Так вот, правда что с помощью c++ можно рисовать, напрмер...

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

Поясните код - C++
Скачал исходник змейки, сейчас пытаюсь разобраться в коде Вот сам код : #include &lt;iostream&gt; //стандартная библиотека #include...

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

Поясните новичку! - C++
Задано 6-значное число. Определить, кратно ли это число 9, используя признак делимости на 9 (число делится на 9, если сумма его цифр...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6322 / 5906 / 1913
Регистрация: 18.12.2011
Сообщений: 15,189
Завершенные тесты: 1
17.01.2016, 19:25     Поясните по шаблонам #2
anti-k,
П.4.11.Правил гласит:
Если вопрос был решен вами самостоятельно, отпишите об этом в своей теме - есть и другие люди, которые столкнутся с той же проблемой, и им поможет ваш ответ.
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;
РАЗНЫЕ  типы!!
 
В общем так то(не знаю кому это поможет).
Ответ Создать тему
Опции темы

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