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

Программа на C++ с использованием шаблона функции. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычисление сильных компонент орграфа. Алгоритм Габова. http://www.cyberforum.ru/cpp-beginners/thread262715.html
Помогите, пожалуйста, найти инфу по этой теме. В интернете никак не могу отыскать, а если и нахожу, то очень мало :wall: Скинте ссылки может на какие-то хорошие книги Заранее спасибо!
C++ Строки.Удаление . Помогите пожалуйста.Вообще понять не могу. Вводится строка текста. Удалить последние N слов, содержащих заданную подстроку. Заданная строка вводится дополнительно. http://www.cyberforum.ru/cpp-beginners/thread262714.html
Получить часть строки C++
Есть строка: char *Text = "<sender>ник_отправителя</sender>"; как получить ник отправителя в char *SenderNick?
RLE компресія на с++ C++
есть програма int main(int argc, char* argv) { FILE *Pfile1 = fopen("test2.txt","rb"); if(Pfile1 == NULL) { cout <<"eror opening"<<endl; return 1; } FILE *Pfile = fopen("test.txt","wt"); if(Pfile == NULL)
C++ Масивы(код С)!!! http://www.cyberforum.ru/cpp-beginners/thread262697.html
1. Заданы два одномерных массива целых чисел на 100 элементов каждый. Обменять соответствующие значения элементов этих массивов. При обмене не использовать промежуточные величины. 2. Пусть дано 50 чисел. Найти, сколько среди них отличающихся от последнего числа. Надеюсь на помощь)
C++ Посчитать количество отрицательных элементов массива найти количество отрицательных элементов массива , дробная часть которых меньше 4 помогите, что здесь не правильно? программа не считает элементы как надо. и как сделать "дробная часть которых меньше 4" ??? спасибо. #include <iostream> void main() { const n=5; подробнее

Показать сообщение отдельно
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
23.03.2011, 20:44     Программа на C++ с использованием шаблона функции.
sheill, Обычный калькулятор...
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
#include <iostream>
 
template<class T>
class Expr
{
public:
   enum opers {plus='+', sub='-', mul='*', div='/', none};
   Expr(const T& arg1_=T(), const T& arg2_=T(), const opers& op=none):
      arg1(arg1_), arg2(arg2_), oper(op)
   {
   }
   void setFirstArg(const T& val)
   {
       arg1=val;
   }
   void setSecondArg(const T& val)
   {
       arg2=val;
   }
   void setOper(const opers& op)
   {
       oper=op;
   }
   const T& getFirstArg() const {return arg1;}
   const T& getSecondArg() const {return arg2;}
   const opers& getOper() const {return oper;}
   T countExpr() const 
   {
        switch(oper)
        {
             case plus:
             {
                 return arg1+arg2;
             }
             break;
             case sub:
             {
                 return arg1-arg2;
             }
             break;
             case mul:
             {
                 return arg1*arg2;
             }
             break;
             case div:
             {
                 if(arg2 == 0)
                     throw std::exception("Can`t divide by 0");
                 return arg1/arg2;
             }
             break;
             default:
             {
                 throw std::exception("Can`t count expr with oper 'none'");
             }
       }
    }
private:
    T arg1;
    T arg2;
    opers oper;
};
 
template<class T>
std::ostream& operator <<(std::ostream& os, const Expr<T>& expr)
{
    os<<expr.getFirstArg()<<static_cast<unsigned char>(expr.getOper())<<expr.getSecondArg()<<"="<<expr.countExpr()<<'\n';
    return os;
}
 
int main()
{
    Expr<int> expr(5, 10, Expr<int>::plus);
    std::cout<<expr<<'\n';
}
 
Текущее время: 15:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru