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

Написать класс Student - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Оценка алгоритма http://www.cyberforum.ru/cpp-beginners/thread170952.html
Может конечно не в тот раздел пишу, но думаю тут мне помогут есть вообщем алгоритм double fast(double a, int n) { int counter=0; double res=1; while (n>0) { if (n%2==1) {
C++ Сгенерировать одномерный масив так чтобы цифры в нём не повторялись Пожалуйста помогите! Пропустил первую лекцию по С, теперь сижу на лабе не знаю что делать. Задание не сложное, но как реализовать не понимаю (первый раз работаю на этом языке). Задание:... http://www.cyberforum.ru/cpp-beginners/thread170934.html
Определить составляют ли заданные числа геометрическую прогрессию C++
1ый курс, и уже трудности,хотя трудность по математике задача из учебника если данные цифры составляют геометрическую погрессию, возвращать true, если нет-false код мне не нужен,а только...
Из жизни студента C++ C++
требуться ли начинающему программисту C++ самому писать сортировку массивов(полностью понимать чтобы аж с закрытыми глазами писать) или же по началу можно обойтись уже готовыми шаблонами, а понимание...
C++ Создать класс Animal http://www.cyberforum.ru/cpp-beginners/thread170921.html
Создать класс Animal, содержащий следующие элементы: - поле «вес» float Mass; - поле «пол» char* Sex; - поле «окрас» char* Color; - поле «возраст» int Age; - метод получения веса float...
C++ Ограничен ли буфер, передаваемый в функцию send Вопрос: ограничен ли размер буфера, передаваемого в функцию send, размером MTU? подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
01.10.2010, 00:34
CyBOSSeR, На счет этого хз. Derived добавил, ибо все три подразумеваю под шаблонными.
В таком случае Derived вполне полезен, ибо если расширять функционал, возникнет проблема в инстанцированием шаблона абстрактного класса. С мат. операторами точно. С остальным - хз.
По поводу работы - ща проверю.
Он же по идее вообще замкнется вот тут:
C++
1
Derived d;//Derived - абстрактный класс. Следовательно пошлет.
Но если так:
C++
1
2
3
Derived*d=new DerivedIO;
std::cin>>d;
std::cout<<d;
вполне скомпилится я думаю.
Не. Не компилится.

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
31
32
33
34
35
36
37
38
39
40
41
42
template<class T>
class Base
{
public:
   template<class T2>
   friend std::ostream& operator <<(std::ostream&, const Base<T2>&Ob);
   template<class T2>
   friend std::istream& operator >>(std::istream&, Base<T2>&Ob);
   virtual void input(std::istream&) {}
   virtual void output(std::ostream&) const {}
   //
};
 
template<class T>
class Derived:public Base<T>
{
public:
   virtual void input(std::istream&)=0;
   virtual void output(std::ostream&)const=0;
};
 
template<class T>
class DerivedIO:public Derived<T>
{
public:
   void input(std::istream&) {/**/}
   void output(std::ostream&) const {/**/}
};
 
template<class T>
std::ostream& operator <<(std::ostream& os, const Base<T>& Ob)
{
    Ob.output(os);
    return os;
}
 
template<class T> 
std::istream& operator>> (std::istream& is, Base<T>& Ob)
{
     Ob.input(is);
     return is;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru