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

Шаблоны классов, перегрузка operator<< класса ostream - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Точки на плоскости. http://www.cyberforum.ru/cpp-beginners/thread448450.html
Заданы три точки на плоскости: M с координатами (x1,y1), L с координатами (x2,y2) и H с координатами (x3,y3). Определите, лежат ли они на одной прямой. При отрицательном ответе найти площадь и...
C++ Векторы! Введите вектор и найдите его норму: сумму абсолютных величин координат. Что значит сумму абсолютных величин координат. объясните сам ход решения http://www.cyberforum.ru/cpp-beginners/thread448433.html
C++ структура
почему компилятор не одобряет такую запись cout<<"Координаты суммарной точки равны - x "<<p3.x=p2.x+p1.x; cout<< "y" <<p3.y=p2.y+p1.y; говорит что "=" не определен, вроде = не определен для ...
Длина вектора C++
Я написал код для нахождения длины вектора проблема в том что она не выводит мне числа после запятой в чём проблема в задание написано использовать тип float #include <cstdlib> #include...
C++ название библиотеки http://www.cyberforum.ru/cpp-beginners/thread448392.html
как называется библиотека в которой описана функция D3DXCreateTeapot ? Добавлено через 4 минуты #include <windows.h> #include <d3d9.h> #include <d3dx9mesh.h>
C++ Конструктор копирования Может быть глупый вопрос, а может я глупый... Конструктор копирования имеет такой синтаксис имякласса(const имякласса &){ тело конструктора } Почему параметр передается по ссылке? подробнее

Показать сообщение отдельно
silent_1991
Эксперт С++
4989 / 3046 / 149
Регистрация: 11.11.2009
Сообщений: 7,028
Завершенные тесты: 1
18.02.2012, 22:11
Цитата Сообщение от Konstantin_D Посмотреть сообщение
Что означает <T>(ostream &os, const A<T> &a) ?
Что функция шаблонная. В данном случае аргументы шаблона можно не писать, а оставить угловые скобки пустыми, но так не эстетично)), и я предпочитаю писать аргументы всегда. В общем случае писать надо, потому что в общем случае аргументы шаблонов не всегда могут быть выведены из параметров, переданных функции.

Цитата Сообщение от Konstantin_D Посмотреть сообщение
Код работает и без упреждающего объявления класса и функции.
Не должен...

Цитата Сообщение от Konstantin_D Посмотреть сообщение
Для чего нужны эти объявления?
Предварительное объявление функции нужно потому, что в самом классе дружественной ему объявляется конкретная инстанция этой функции (сформированная для конкретного типа). Но раз в этом месте мы говорим о конкретике, значит где-то ранее должно быть объявление общей формы (грубо, но понятно). Ну а класс, понятное дело, нужно объявить для того, чтобы затем объявить функцию, принимающую параметром ссылку на этот класс.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.