Шаблоны классов с++ примеры. Обобщенные классы. Изучение С++ для начинающих. Урок
HTML-код
- Опубликовано: 25 дек 2017
- Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)
Шаблоны функций. Шаблонные функции c++. template typename. template class. Урок #41
goo.gl/sb5k74
Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут!=)
www.donationalerts.ru/r/simple...
или тут
/ simplecode
Уроки по программированию
Наша группа ВК smplcode
Подписывайтесь на канал / @simplecodeit
*Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)*
@@hvac_vdk "... которая позволяет намного более удобно оперировать с данными" (0:40) - Это я к заявлению о том что "STL - это самостоятельная библиотека". В том смысле что, не вижу противоречий, к тому что Сергей говорит.
@@UFO26 конечно
@@UFO26 чтобы освободить динамически выделенную память и для уничтожения данных по окончании работы проги
@@UFO26 для простых классов , какой вы написали , для него не нужен деструктор , для него вызывается компилятором , так что вызов дестркюуктора зависит от случая , который вы рассматриваете
@@UFO26 и да прд уничтожением данных подразумевается очистка памяти , котору заняла прога , по окончании очищается
Потрясающие уроки и подача материала! Душевный лайк! Просим продолжить уроки по С++. Пожалуйста.
#шаблоныклассов #обобщенныеклассы #SimpleCode #урокипрограммирования
Самый лучший урок
все понятно и наглядно с примерами
и ваши объяснения просто ЗОЛОТО!!!
Поддерживаю большинство комментариев, подача материала замечательная, всё понятно и развёрнуто! Спасибо за бесплатный и качественный контент!
Скинул всем одногруппникам, которые задалбывают просьбами помочь сделать лабу, спасибо)
RESPEKT BRAT 😊👍👍👍👍👍👊👊👊👊👊☝☝☝☝☝☝☝☝☝
Очень полезное видео! Благодаря тебе я сделаю лабу и меня не отчислят
Спасибо!
Спасибо за бесценный труд!)
огромное спасибо за урок!!!
Спасибо за урок. Очень интересная тема.
Большое спасибо!
Спасибо, Сергей. У вас очень хорошие уроки, продолжайте в том же духе.
Так забавно, за полчаса после урока смог написать шаблонный класс двусвязного списка и он работает. Ыыы, круто. Даже операторы переопределил некоторые. Когда-нибудь меня хватит на что-то большее.
Ну что, ты? Как дела?
@@user-ye5hi9cu8s пишу языковую виртуальную машину🙂
Как дела?
Спасибо.
Спасибо! Замечательный урок!
Вот оно как делается! Урок зашибенен
Спасибо за урок!
Спасибо за урок.
Огромное спасибо)
Очень хорошо объясняешь. Спасибо за эти уроки!
Спасибо большое , все стало ясно , после твоего видео .Всем рекомендую !
Спасибо за урок
коммент для продвижения видео автору респект
Для множества шаблонных параметров иногда лучше паки использовать
Почему у меня возле template пишет "Укажите аргументы примера шаблонов для IntelliSense" ? Как это убрать?
Like!
Сергей, спасибо!
Смотрю, набираюсь знаний, отличный канал
Все супер! Спасибо!
просто лучший !
Супер! Спасибо!
я так понял, тут по аналогии как с абстрактными классами, только там - есть функции virtual void foo() = 0, а тут void foo(T1 value)
Вижу влияние C#
Шикарно
Кто не знал можно написать вот так:
auto a;
Компилятор автоматом подхватит,что это за переменная.
Gl:>
Это чтоб код был плохо читаемым?)
Спс а то не особо понимал смысла это шаблона если мы всеровно указываем заранее что у нас будет за тип
@@user-vw8iw7sv9o если MyClass работает, то крутяк. Я ещё не пробовал
Здравствуйте. Столкнулся с проблемой определения класса в .cpp и .h файле. Непонятное поведение, методы класса в .cpp не понимают что за "T" я от них требую.
Конструктор в .h ALesson_Template(const T &Type_Name);
Конструктор в .cpp template ALesson_Template::ALesson_Template(const T &type_name)
SPASIBO!!
А как реализацию методов обобщенного класса выкинуть в исходник?
спасибо
ну вы и объясняете конесно
почему нельзя рассказать что для кадого типа генерируется компилятором соот класс с этим типом
Спасибо
Проще Argument deuction guide для MyClass написать чтобы в не указывать тип:
template
MyClass(T)->MyClass;
интересно
13:58 чет не понял
так лучше
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
class a {
public:
a() {x = y = z = 0;
}
a(int x, int y, int z) {
this->x = x; this->y = y;
this->z = z;
}
private:int x; int y; int z;
};
template//шаблонный класс
class my {
public:
my(t1 value) {
this->value = value;
}
public:
void get() { cout
егор щербанов херня какая то зачем столько библиотек если по факту кроме иострима не одна не задействована, так же в классе my зачем то две паблик секции и секция протект если кто не наследует из неё ничего. Чем твой код отличается от кода в уроке в сторону « Так лучше» не понятно.
Соглашусь с человеком выше - нахрена столько библиотек?
дебилизм...
Вертикал спейсинг где, всё впритык :(
Вынес определение класса в другой модуль, при компоновке получил ошибку.
Ошибка LNK2019 ссылка на неразрешенный внешний символ "public: __thiscall Test::Test(int)" (??0?$Test@H@@QAE@H@Z) в функции _main. Тесты
Если не выносить в другой модуль или не использовать шаблон, а определить типы явно, то выполняется и компилируется.
Какой урок смотреть?
Шаблоны нельзя использовать если у тебя программа разбита на модули
@@vsevolodtodd4304 можно код включить в h-файл. Есть мнение, что линковщик сможет дубли функций исключить.
Спасибо!
Спасибо Сергей!
спасибо
Спасибо!
спасибо