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

Абстрактный шаблонный класс - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ С клавиатуры вводится выражение вида с ор с (с-цифра, ор-знак операции). Вычислить значение выражения. Использовать оператор вариантов. http://www.cyberforum.ru/cpp-beginners/thread169322.html
Буду благодарен!=(( 1. С клавиатуры вводится выражение вида с ор с (с-цифра, ор-знак операции). Вычислить значение выражения. Использовать оператор вариантов. 2. Вывести на экран второго и шестандцатую эквиваленты целого числа. Не использовать спецификатор типа% х,% Х в функции printf.
C++ Операции с векторами и матрицами а) Написать программу, которая выполняет следующую операцию : Q = X +3*Y Где X, Y, Q – векторы размером 20x1. Все элементы векторов X і Y заполнить единицами. Также программа должна предлогать ввод X и Y. б) Создать программу, которая выполняет следующую операцию: Q = МА*Х где МА – матрица размером 10х10; X, Q – векторы размером 10x1. Все элементы матрицы МА и вектора X заполнить... http://www.cyberforum.ru/cpp-beginners/thread169316.html
Вопрос по программе. Нужно протабулировать ф-цию C++
Приветствую вас дамы и господа Тут такое дело... Задание: Код: # include <iostream.h> # include <conio.h> # include <math.h>
Экстремумы Матрицы и Подпрограммы C++
Здраствуйте помогите пожалуйста с задачками на С++! 1) Вычислите результат, указанный в варианте задания. Константа A (если она есть в варианте) и вектора X и (или) Y задаются вводом. Размер векторов X и Y одинаков и равен n. Если экстремальное значе¬ние повторяется, а надо найти его номер, считайте результатом номер первого порядку экстремума. В каждой из матриц A (4×3), B (5×4) поменять...
C++ класс. ввод данных http://www.cyberforum.ru/cpp-beginners/thread169296.html
Есть класс. У каждого имени - свое числовое значение. Нужно сделать так, чтобы после заполнения поля "имя" вылазило типа этого: "Сколько у этого человека будет значений?", ввести эти значения, и потом все снова: "имя", несколько значений, их ввод и т.д Т.е. полсе каждого ввода имени я самостоятельно хочу решать: сколько у этого человека будет значений и, соответсвенно, вводить их. class bank...
C++ Удаление цифр из символьной строки Доброго всем времени суток :) Такая задача: на языке C нужно составить программу удаления из строки символов только цифры. Например, строка "dfg546sv435", должно получиться "dfgsv". Поможете? подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
 Аватар для Mr.X
2802 / 1578 / 247
Регистрация: 03.05.2010
Сообщений: 3,666
27.09.2010, 12:55     Абстрактный шаблонный класс
А так не проще будет:
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
///////////////////////////////////////////////////////////////////////////////////////
#include <iostream>
///////////////////////////////////////////////////////////////////////////////////////
template<class T>
class T_matr
{
    T t_;//Для примера.
public:
    T_matr() : t_()
    {}
    //---------------------------------------------------------------------------------
    T get()
    {
        return t_;
    }
    //---------------------------------------------------------------------------------
    void set(T t)
    {
        t_ = t;
    }
};
///////////////////////////////////////////////////////////////////////////////////////
template<class T>
class T_matr_io
{
protected:
    T_matr<T>  matr;
 
public:
    virtual ~T_matr_io(){}
    virtual void  input()   = 0;
    virtual void  output()  = 0;
    //---------------------------------------------------------------------------------
    void  print_typename()
    {
        std::cout << typeid(T).name();
    }
};
///////////////////////////////////////////////////////////////////////////////////////
template<class T>
class T_matr_io_console : public T_matr_io<T>
{
public:
    void  input()
    {
        std::cout << "Ввод матрицы с элементами типа ";
        print_typename();
        std::cout << " с консоли ->   ";
        T t;
        std::cin >> t;
        matr.set(t);
    }
    //---------------------------------------------------------------------------------
    void  output()
    {
        std::cout << "Вывод матрицы с элементами типа ";
        print_typename();
        std::cout << " на консоль -> "                  
                  << matr.get()
                  << "."
                  << std::endl;    
    }
};
///////////////////////////////////////////////////////////////////////////////////////
template<class T>
class T_matr_io_cosmos : public T_matr_io<T>
{
public:
    void  input()
    {
        std::cout << "Ввод матрицы с элементами типа ";
        print_typename();
        std::cout << " из космоса."
                  << std::endl;    
    }
    //---------------------------------------------------------------------------------
    void  output()
    {        
        std::cout << "Вывод матрицы с элементами типа ";
        print_typename();
        std::cout << " в космос."
                  << std::endl;    
    }
};
///////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
 
    T_matr_io<int>*  p_matr_io_console_int  = new T_matr_io_console<int>;
    T_matr_io<int>*  p_matr_io_cosmos_int   = new T_matr_io_cosmos<int>;
 
    p_matr_io_console_int->input();
    p_matr_io_console_int->output();
 
    p_matr_io_cosmos_int->input();
    p_matr_io_cosmos_int->output();
   
 
    T_matr_io<char>*  p_matr_io_console_char  = new T_matr_io_console<char>;
    T_matr_io<char>*  p_matr_io_cosmos_char   = new T_matr_io_cosmos<char>;
 
    p_matr_io_console_char->input();
    p_matr_io_console_char->output();
 
    p_matr_io_cosmos_char->input();
    p_matr_io_cosmos_char->output();
}
 
Текущее время: 00:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru