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

C++ ООП - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ [C++] Регулярные выражения http://www.cyberforum.ru/cpp-beginners/thread149699.html
Знаю что в стандарте С нет регулярных выражений. Хочу попробывать собрать простую функцию поиска по шаблону регулярных выражений. Аналог int preg_match_all ( string $pattern , string $subject , array &$matches ] ) (шаблон, строка, массив) (pattern,subject,outarray)
C++ Include gurad В моей программе, при попытке использования сабжа, происходит ошибка. Для проверки я составил следующий код. //hd1.h #ifndef hd1 #define hd1 #include "hd2.h" class hd1 { public: http://www.cyberforum.ru/cpp-beginners/thread149686.html
Как назывался компилятор типаBorland Pascal только для C++ C++
Там такое же синие окошечко было?
сегодня наконец то понял что такое КЛАСС, и ОБЪЕКТ. понято всё, кроме одного - зачем всё это? в смысле, можно же без этого? так зачем жизнь усложнять? C++
сегодня наконец то понял что такое КЛАСС, и ОБЪЕКТ. понято всё, кроме одного - зачем всё это? в смысле, можно же без этого? так зачем жизнь усложнять?
C++ Каталог товаров (Dev-C++) http://www.cyberforum.ru/cpp-beginners/thread149660.html
создать программу,позволяющую вводить элементы массива структур(размерность массива не более 20 элементов),содержащие сведения об имеющихся в наличии товарах,наименовании товара,его количество в штуках и цену еденицы товара,и определяющую суммарную цену имеющегося в наличии товара по задаваемому наименованию.
C++ Синтаксические ошибки при компиляции программы на структуру #include <iostream> #include <string.h> #define n 4; using namespace std; struct OIL{ char marka; int litri; int cena; }; OIL oil; подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
23.07.2010, 06:48  [ТС]     C++ ООП
Итак. Возрождаем-с и продолжаем-с.

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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
//classes.h
#ifndef _CLASSES_H_
#define _CLASSES_H_
 
#include <iostream>
 
const std::string CarName("Car");
const std::string TruckName("Truck");
const std::string BusName("Bus");
const std::string TramName("Tram");
const std::string MetroName("Metro");
 
const std::string CarFuel("Benzin");
const std::string TruckFuel("Dizel");
 
const int CarNum=4;
const int TruckNum=2;
const int BusNum=100;
const int TramNum=50;
const int MetroNum=500;
 
const std::string BusWhere("On the earth");
const std::string TramWhere("On rails");
const std::string MetroWhere("Under ground");
 
///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////
class Transport
{
protected:
    std::string name;      // Название транс средства. Константа
    double max_speed; // Максимальная скорость
    int num;       // Количество пассажиров. Константа
    int year;      // Год выпуска
public:
    Transport(){}
    Transport(std::string name_, double max_speed_, int num_, int year_):
      name(name_), max_speed(max_speed_), num(num_), year(year_){}
    virtual ~Transport(){}
    virtual std::string  GetName() const{return name;}
    double  GetSpeed() const{return max_speed;}
    virtual int GetNum() const{return num;}
    virtual void SetInfo(double max_speed_, int year_);
    int GetYear() const{return year;}
};
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
class Auto:public Transport
{
protected:
    std::string fuel;//Топливо. Константа
    std::string mark;//Страна
    std::string country;//Производитель
public:
    Auto(){}
    Auto(std::string fuel_, std::string mark_, std::string country_, std::string name_, double max_speed_, int num_, int year_)
        :Transport(name_,max_speed_,num_,year_),fuel(fuel_),mark(mark_),country(country_){}
    virtual ~Auto(){}
    virtual std::string GetFuel() const{return fuel;}
    virtual void SetInfo(std::string mark_, std::string country_);
    std::string GetMark() const{return mark;}
    std::string GetCountry() const{return country;};
};
///////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
class Car:public Auto
{
protected:
    double run;//Пробег
    double volume;// Объем багажника
public:
    Car(){}
    Car (double run_, double volume_, std::string name_, double max_speed_, int num_, int year_,
        std::string fuel_, std::string mark_, std::string country_):Auto(fuel_,mark_,country_,name_,
        max_speed_,num_,year_),run(run_),volume(volume_){}
    virtual ~Car(){}
    virtual void SetInfo(double max_speed_, int year_, std::string mark_, std::string country_, double run_, double volume_);
    virtual std::string GetName() const {return CarName;}
    virtual int GetNum() const {return CarNum;}
    virtual std::string GetFuel() const {return CarFuel;}
    double  GetRun() const {return run;}
    double  GetVolume() const {return volume;}
    friend std::ostream& operator<< (std::ostream&os, Car&Ob);
    friend std::istream& operator>>(std::istream&is, Car&Ob);
};
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
class Truck:public Auto
{
private:
    double cargo;//Грузоподъемность
    std::string goods;//Что перевозит
    std::string Body_type;//Тип кузова
public:
    Truck(){}
    Truck(double cargo_, std::string goods_, std::string Body_type_, std::string name_, double max_speed_,
        int num_, int year_, std::string fuel_, std::string mark_, std::string country_):Auto(fuel_,mark_,
        country_,name_,max_speed_,num_,year_), cargo(cargo_), goods(goods_), Body_type(Body_type_){}
    virtual ~Truck(){}
    virtual void SetInfo(double max_speed_, int year_, std::string mark_, std::string country_, double cargo_, std::string goods_, std::string BT_);
    virtual std::string GetName() const {return TruckName;}
    virtual int GetNum() const{return TruckNum;}
    virtual int GetYear() const {return year;}
    virtual std::string GetFuel() const {return TruckFuel;}
    double GetCargo() const {return cargo;}
    std::string GetGoods() const {return goods;}
    std::string GetBT() const {return Body_type;}
    friend std::ostream& operator<<(std::ostream&, Truck&);
    friend std::istream& operator>>(std::istream&, Truck&);
};
/////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
class Town_Transport:public Transport
{
protected:
    std::string Where;//Где ходит транспорт. Константа.
    double Price_of_ticket;//Цена билета
public:
    Town_Transport(){}
    Town_Transport(std::string Where_, double P_o_t_, std::string name_,double m_s_, int num_, int year_)
        :Transport(name_, m_s_, num_, year_), Where(Where_), Price_of_ticket(P_o_t_){}
    virtual ~Town_Transport(){}
    virtual std::string GetWhere() const {return Where;}
    virtual double GetPrice() const {return Price_of_ticket;}
    virtual void SetInfo(double P_o_t_);
};
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////
class Bus:public Town_Transport
{
public:
    Bus(){}
    Bus(std::string Where_, double P_o_t_, std::string name_, double m_s_, int num_, int year_)
        :Town_Transport(Where_, P_o_t_, name_, m_s_, num_, year_){}
    virtual ~Bus(){}
    virtual std::string GetName() const {return BusName;}
    virtual int GetNum() const {return BusNum;}
    virtual std::string GetWhere() const {return BusWhere;}
    virtual void SetInfo(double P_o_t_, double m_s_, int year_);
    friend std::ostream& operator << (std::ostream&, Bus&);
    friend std::istream& operator >> (std::istream&, Bus&);
};
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
class Tram:public Town_Transport
{
public:
    Tram(){}
    Tram(std::string Where_, double P_o_t_, std::string name_, double m_s_, int num_, int year_)
        :Town_Transport(Where_, P_o_t_, name_, m_s_, num_, year_){}
    virtual ~Tram(){}
    virtual std::string GetName() const {return TramName;}
    virtual int GetNum() const {return TramNum;}
    virtual std::string GetWhere() const {return TramWhere;}
    virtual void SetInfo(double P_o_t_, double m_s_, int year_);
    friend std::ostream& operator << (std::ostream&, Tram&);
    friend std::istream& operator >> (std::istream&, Tram&);
};
class Metro:public Town_Transport
{
public:
    Metro(){}
    Metro(std::string Where_, double P_o_t_, std::string name_, double m_s_, int num_, int year_)
        :Town_Transport(Where_, P_o_t_, name_, m_s_, num_, year_){}
    virtual ~Metro(){}
    virtual std::string GetName() const {return MetroName;}
    virtual int GetNum() const {return MetroNum;}
    virtual std::string GetWhere() const {return MetroWhere;}
    virtual void SetInfo(double P_o_t_, double m_s_, int year_);
    friend std::ostream& operator << (std::ostream&, Metro&);
    friend std::istream& operator >> (std::istream&, Metro&);
};
#endif
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
//classes.cpp
#include <iostream>
#include <cstdlib>
#include <string>
#include "Classes.h"
 
void Transport::SetInfo(double max_speed_, int year_)
{
    max_speed=max_speed_;
    year=year_;
}
//////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
void Auto::SetInfo(std::string mark_, std::string country_)
{
    mark=mark_;
    country=country_;
}
//////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
void Car::SetInfo(double max_speed_, int year_, std::string mark_, std::string country_, double _run, double _volume)
{
    Transport::SetInfo(max_speed_, year_);
    Auto::SetInfo(mark_, country_);
    run=_run; 
    volume=_volume;
}
/////////////////////////////////////////////////////////////////
std::ostream& operator<<(std::ostream&str, Car&p)
{
        str<<"Name: "<< p.GetName() <<'\n'; str<<"Max_speed: "<< p.GetSpeed() <<'\n';
        str<<"Num: "<< p.GetNum() <<'\n'; str<<"Year: "<< p.GetYear() <<'\n';
        str<<"Fuel: "<< p.GetFuel() <<'\n'; str<<"Mark: "<< p.GetMark() <<'\n';
        str<<"Country: "<< p.GetCountry() <<'\n'; str<<"Run: "<< p.GetRun() <<'\n';
        str<<"Volume: "<< p.GetVolume() <<'\n'; return str;
}
///////////////////////////////////////////////////////////////////
std::istream& operator>>(std::istream&str, Car&p)
{
    std::cout<<"Enter max speed: \n";str>>p.max_speed; std::cout<<"Enter year: \n";str>>p.year;
    std::cout<<"Enter mark: \n";str>>p.mark; std::cout<<"Enter country: \n";str>>p.country; 
    std::cout<<"Enter run: \n";str>>p.run; std::cout<<"Enter volume: \n";str>>p.volume;
    return str;
}
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
void Truck::SetInfo(double max_speed_, int year_,std::string mark_,std::string country_,double cargo_,std::string goods_,std::string BT_)
{
    Transport::SetInfo(max_speed_, year_);
    Auto::SetInfo(mark_, country_);
    cargo=cargo_; 
    goods=goods_; 
    Body_type=BT_;
}
//////////////////////////////////////////////////////////////////////
std::ostream& operator<<(std::ostream&str, Truck&p)
{
    str<<"Name: "<< p.GetName() <<'\n'; str<<"Max_speed: "<< p.GetSpeed() <<'\n';
    str<<"Num: "<< p.GetNum() <<'\n'; str<<"Year: "<< p.GetYear() <<'\n';
    str<<"Fuel: "<< p.GetFuel() <<'\n'; str<<"Mark: "<< p.GetMark() <<'\n';
    str<<"Country: "<< p.GetCountry() <<'\n'; str<<"Cargo: "<< p.GetCargo() <<'\n';
    str<<"Goods: "<< p.GetGoods() <<'\n'; str<<"Body_tipe: "<< p.GetBT() <<'\n'; return str;
}
//////////////////////////////////////////////////////////////////////
std::istream& operator>>(std::istream&str, Truck&p)
{
    std::cout<<"Enter max speed: \n";str>>p.max_speed;std::cout<<"Enter year: \n";str>>p.year;
    std::cout<<"Enter mark: \n";str>>p.mark; std::cout<<"Enter country: \n";str>>p.country; 
    std::cout<<"Enter cargo: \n";str>>p.cargo;std::cout<<"Enter goods: \n";str>>p.goods; 
    std::cout<<"Enter body tipe: \n";str>>p.Body_type;
    return str;
}
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
void Town_Transport::SetInfo(double P_o_t_)
{
    Price_of_ticket=P_o_t_;
}
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
void Bus::SetInfo(double P_o_t_, double m_s_, int year_)
{
    Transport::SetInfo(m_s_, year_);
    Town_Transport::SetInfo(P_o_t_);
}
/////////////////////////////////////////////////////////////////////
std::ostream& operator << (std::ostream&os, Bus&Ob)
{
    os<<"Name: "<< Ob.GetName() <<'\n'; os<<"Max_speed: "<< Ob.GetSpeed() <<'\n';
    os<<"Num: "<< Ob.GetNum() <<'\n'; os<<"Year: "<< Ob.GetYear() <<'\n';
    os<<"Where: "<< Ob.GetWhere() <<'\n'; os<<"Price of ticket: "<< Ob.GetPrice() <<'\n';
    return os;
}
//////////////////////////////////////////////////////////////////////
std::istream& operator >>(std::istream&is, Bus&Ob)
{
    std::cout<<"Enter max_speed: \n"; is>>Ob.max_speed; std::cout<<"Enter year: \n"; is>>Ob.year;
    std::cout<<"Enter price of ticket: \n"; is>>Ob.Price_of_ticket;
    return is;
}
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
void Tram::SetInfo(double P_o_t_, double m_s_, int year_)
{
    Transport::SetInfo(m_s_, year_);
    Town_Transport::SetInfo(P_o_t_);
}
///////////////////////////////////////////////////////////////////////
std::ostream& operator <<(std::ostream&os, Tram&Ob)
{
    os<<"Name: "<< Ob.GetName() <<'\n'; os<<"Max_speed: "<< Ob.GetSpeed() <<'\n';
    os<<"Num: "<< Ob.GetNum() <<'\n'; os<<"Year: "<< Ob.GetYear() <<'\n';
    os<<"Where: "<< Ob.GetWhere() <<'\n'; os<<"Price of ticket: "<< Ob.GetPrice() <<'\n';
    return os;
}
///////////////////////////////////////////////////////////////////////
std::istream& operator >>(std::istream&is, Tram&Ob)
{
    std::cout<<"Enter max_speed: \n"; is>>Ob.max_speed; std::cout<<"Enter year: \n"; is>>Ob.year;
    std::cout<<"Enter price of ticket: \n"; is>>Ob.Price_of_ticket;
    return is;
}
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
void Metro::SetInfo(double P_o_t_, double m_s_, int year_)
{
    Transport::SetInfo(m_s_, year_);
    Town_Transport::SetInfo(P_o_t_);
}
///////////////////////////////////////////////////////////////////////
std::ostream& operator <<(std::ostream&os, Metro&Ob)
{
    os<<"Name: "<< Ob.GetName() <<'\n'; os<<"Max_speed: "<< Ob.GetSpeed() <<'\n';
    os<<"Num: "<< Ob.GetNum() <<'\n'; os<<"Year: "<< Ob.GetYear() <<'\n';
    os<<"Where: "<< Ob.GetWhere() <<'\n'; os<<"Price of ticket: "<< Ob.GetPrice() <<'\n';
    return os;
}
///////////////////////////////////////////////////////////////////////
std::istream& operator >>(std::istream&is, Metro&Ob)
{
    std::cout<<"Enter max_speed: \n"; is>>Ob.max_speed; std::cout<<"Enter year: \n"; is>>Ob.year;
    std::cout<<"Enter price of ticket: \n"; is>>Ob.Price_of_ticket;
    return is;
}
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
//trans.cpp
#include <iostream>
#include <cstdlib>
#include "Classes.h"
int main()
{
    int k=0;
Start:
    std::cout<<"Enter k: 1 for work with Transport, 2 for work with Town transport\n";
    std::cin>>k;
    if(k==1)
    {
        int l=0;
StartTr:
        std::cout<<"Enter l: 1 for work with Car, 2 for work with Truck\n";
        std::cin>>l;
        if(l==1)
        {
            int Num=0;
            Car*Arr;
            std::cout<<"Enter number of elements in array\n";
            std::cin>>Num;
            Arr=new Car[Num];
            for(int i=0;i<Num;i++)
                std::cin>>Arr[i];
            for(int i=0;i<Num;i++)
                std::cout<<Arr[i];
            delete[] Arr;
        }
        else if(l==2)
        {
            int Num1=0;
            Truck*Arr;
            std::cout<<"Enter number of elements in array\n";
            std::cin>>Num1;
            Arr=new Truck[Num1];
            for(int i=0;i<Num1;i++)
                std::cin>>Arr[i];
            for(int i=0;i<Num1;i++)
                std::cout<<Arr[i];
            delete[] Arr;
        }
        else
        {
            std::cout<<"There is no such option. Program going to beginning of Transport\n";
            goto StartTr;
        }
    }
    else if(k==2)
    {
        int l=0;
StartTT:
        std::cout<<"Enter l: 1 for work with Bus, 2 for work with Trum, 3 for work with Metro\n";
        std::cin>>l;
        if(l==1)
        {
            int Num2=0;
            Bus*Arr;
            std::cout<<"Enter number of elements in array\n";
            std::cin>>Num2;
            Arr=new Bus[Num2];
            for(int i=0;i<Num2;i++)
                std::cin>>Arr[i];
            for(int i=0;i<Num2;i++)
                std::cout<<Arr[i];
            delete[] Arr;
        }
        else if(l==2)
        {
            int Num3=0; 
            Tram*Arr;
            std::cout<<"Enter number of elements in array\n";
            std::cin>>Num3;
            Arr=new Tram[Num3];
            for(int i=0;i<Num3;i++)
                std::cin>>Arr[i];
            for(int i=0;i<Num3;i++)
                std::cout<<Arr[i];
            delete[] Arr;
        }
        else if(l==3)
        {
            int Num4=0; 
            Metro*Arr;
            std::cout<<"Enter number of elements in array\n";
            std::cin>>Num4;
            Arr=new Metro[Num4];
            for(int i=0;i<Num4;i++)
                std::cin>>Arr[i];
            for(int i=0;i<Num4;i++)
                std::cout<<Arr[i];
            delete[] Arr;
        }
        else
        {
            std::cout<<"There is no such option. Program going to the beginning of Town Transport\n";
            goto StartTT;
        }
    }
    else 
    {
        std::cout<<"There is no such option. Program going to the beginning\n";
        goto Start;
    }
        
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru