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

не могу понять ошибку - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ паузы между wav файлами http://www.cyberforum.ru/cpp-beginners/thread334564.html
Добрый день ,есть загвоздка с воспроизведением звуковых файлов ,воспроизводя поочередно их ,образуется довольно заметная пауза : sndPlaySound("file_0.wav",SND_SYNC); sndPlaySound("file_1.wav",SND_SYNC); sndPlaySound("file_2.wav",SND_SYNC); Так как звуковой сигнал в них длится около 750 milliseconds, а сам файлы длиной около 1250 milliseconds Есть вариант делать так : ...
C++ отключение клавиши Всем привет! Как можно отключить определенную клавишу в функции GetAsyncKeyState? приведите пожалуйста примеры? http://www.cyberforum.ru/cpp-beginners/thread334544.html
C++ Как long перевести в char?
У меня дата и время в формате long пишу так sprintf(buf, "%d", p); MessageBoxA(NULL, buf, "information", MB_OK); p это указатель на структуру long, long - дата, время получаю 0. пишу под win32
Структурированный в объектно-ориентированный C++
Доброго времени суток! В чем собственно моя проблема. Есть задание курсовой роботы (миниатюры), есть исходник программы написанный мною (прилагаю). Но программу надо написать двумя способами, используя структурированный подход и объектно-ориентированный. Со структурированным я вроде справился, хотя если есть тут проблемы или вопросы просьба ткнуть носом. Как мне переделать программу во второй...
C++/CLI WinForms Получить значение TextBox->Text в переменную http://www.cyberforum.ru/cpp-beginners/thread334488.html
Нужно в переменную из техтВоха считать, как это сдлать??? у меня ругается на тип ? Какой нужен тогда тип, если не строка ? string s; s = Form1::textBox2->Text;
C++ Как создать переменную из консоли Есть функция void createStream(string filename) { OutputStreamPtr stream(OpenSound(device, filename, true)); } Нужно написать функцию, которая будет создавать поток для аудио, но только не с переменной(или как она называется) stream, а с другим названием. То бишь при первом вызове функции createStream она будет как вышеописанная, а при втором, например, void createStream(string... подробнее

Показать сообщение отдельно
Mr. Pyatachok
 Аватар для Mr. Pyatachok
8 / 8 / 0
Регистрация: 30.06.2011
Сообщений: 250
19.07.2011, 22:07     не могу понять ошибку
Народ, здарова, сижу над классами, конкретно наследование классов!
Компилятор выдает ошибку: [C++ Error] Unit1.cpp(143): E2285 Could not find a match for 'Body::Body(char *,shape,color,material)'

Объясните почему, ведь, вроде правильно.
Код ниже:
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
#include<iostream.h>
#include<math.h>
#include<conio.h>
#include<string.h>
 
 
enum shape{prizm,parallelepiped,cube,pyramid,cone,cylinder}; //глобальное перечисление
enum color{red,yellow,green,blue,white};
enum material{metal,wood,plastic,cardboard};
 
class Body
{
   private:
  char* name_obj;
  shape forma_obj;
  float H;
  float So;
  float Sb;
  float Sp;
  float V;
  float k;
  float P;
  float p;
  color    col_c;
  material mat_m;
 
   public:
  float get_P()
  {
    float P=p*V;
    return P;
  }
 
  float get_V()
  {
    float V=So*H*k;
    return V;
  }
 
 Body(char *name,shape forma,color c,material m,int K)
      {
        name_obj=new char[strlen(name)+1];
        strcpy(name_obj,name);
        forma_obj=forma;
        col_c=c;
        mat_m=m;
        k=K;
        switch(forma_obj)
              {
               case prizm:          cout<<"***********************************Призма.**************************************";
                                    k=1.0;
                                    break;
               case parallelepiped: cout<<"***********************************Параллелепипед.******************************";
                                    k=1.0;
                                    break;
               case cube:           cout<<"***********************************Куб.*****************************************";
                                    k=1.0;
                                    break;
               case pyramid:        cout<<"***********************************Пирамида.************************************";
                                    k=1.0/3.0;
                                    break;
               case cone:           cout<<"***********************************Конус.***************************************";
                                    k=1.0/3.0;
                                    break;
               case cylinder:       cout<<"***********************************Цилиндр.*************************************";
                                    k=1.0;
                                    break;
               default:cout<<"Неизвестная фигура.\n";
             }
         if (k!=0)
          {
            get_V();
          }
        switch(col_c)
             {
               case red:    cout<<"red";
                            break;
               case yellow: cout<<"yellow";
                            break;
               case green:  cout<<"green";
                            break;
               case blue:   cout<<"blue";
                            break;
               case white:  cout<<"white";
                            break;
               default: cout<<"Нет такого цвета.";
                        break;
             }
        switch(mat_m)
             {
               case metal:      cout<<"metal";
                                p=7.874;        //плотность железа
                                break;
               case wood:       cout<<"wood";
                                p=0.861;       //плотность дуба
                                break;
               case plastic:    cout<<"plastic";
                                p=1.235;       //плотность пластика
                                break;
               case cardboard:  cout<<"cardboard";
                                p=0.689;       //плотность картона
                                break;
               default: cout<<"Нет такого материала.";
                        break;
             }
           if(p!=0)
             {
               get_P();
             }
     }
 
 
  void Display()
 {
   cout<<"* Имя объекта - "<<name_obj<<"."<<endl;
   cout<<"* Форма объекта - "<<forma_obj<<"."<<endl;
   cout<<"* Площадь основания равна:          \tSo="<<So<<endl;
   cout<<"* Площадь боковой поверхности равна:\tSb="<<Sb<<endl;
   cout<<"* Площадь полной поверхности равна: \tSp="<<Sp<<endl;
   cout<<"* Объем обекта равен:               \tV="<<get_V()<<endl;
   cout<<"* Вес тела равен:                   \tP="<<get_P()<<endl;
   cout<<"********************************************************************************"<<endl<<endl;
 
 }
 
  ~Body()
  {  delete[]name_obj;  }
 
 
  void get_H(float H)
       {  this->H=H;    }
  void get_So(float So)
       {  this->So=So;  }
  void get_Sb(float Sb)
       {  this->Sb=Sb;  }
  void get_Sp(float Sp)
       {  this->Sp=Sp;  }
};
 
 class cl_prizm: public Body
{
  public:
  cl_prizm(char *name,shape forma,color c,material m,float H,float So,float Sb,float Sp):Body(name,forma,c,m)
 {
    get_H(H);
    get_So(So);
    get_Sb(Sb);
    get_Sp(Sp);
 
 }
};
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru