Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2015, 21:39   #1
jinos
Пользователь
 
Регистрация: 12.11.2014
Сообщений: 20
По умолчанию Помогите, что не так в программе?

Код:
#include <iostream>
#include <string.h>

using namespace std;

class LightDevice

{
public:
   LightDevice(int,int,int );

   void show_LightDevice(void);

   int GetLight()
{
    return Light;
}

int GetPower()
{
    return Power;
}

int GetVoltage()
{
    return Voltage;
}

private:

int Light;

int Power;

int Voltage;

};

LightDevice::LightDevice(int Light, int Power,int Voltage)

{
   LightDevice::Light = Light;
   LightDevice::Power = Power;
   LightDevice::Voltage = Voltage;
}

void LightDevice::show_LightDevice(void)

{
    cout << "Vvedite Yarkost" << endl;
    cin >> Light;
  cout << "Yarkost: " << Light << endl;
cout << "Vvedite Moshnoct" << endl;
    cin >> Power;
  cout << "Moshnoct: " << Power << endl;
  cout << "Vvedite Naprazhenie" << endl;
    cin >> Voltage;
  cout << "Napryagenie: " << Voltage << endl;
}

class Lamp : public LightDevice

{
private:

   int State;
   int Color;

public:

   Lamp(int, int, int,int );

   void show_Lamp(void);

   int Off(void)
   {
   State=0;
   return State;
   };

  int On(void)
   {
   State=1;
   return State;

   };

  Lamp operator++(int);

};

Lamp Lamp::operator++(int)
{

Lamp old=*this;




return old;

}

Lamp::Lamp(int Light, int Power, int Voltage, int Color) : LightDevice(Light, Power, Voltage)

{
    Lamp::Color = Color;

}

void Lamp::show_Lamp(void)

{
   show_LightDevice();
   cout << "Vvedite Cvet" << endl;
    cin >> Color;
   cout << "Cvet: " << Color << endl;
   cout << "Sostoyanie: " << State << endl;
}

int main()

{
   LightDevice sost();
   Lamp cvet();
   sost.show_LightDevice();
   cvet.show_Lamp();
}
Выдает такие ошибки:
error: request for member 'show_LightDevice' in 'Sost' , which is of non-class type 'LightDevice()'
error: request for member 'show_Lamp' in 'Cvet' , which is of non-class type 'Lamp()'

Последний раз редактировалось jinos; 18.05.2015 в 21:57.
jinos вне форума Ответить с цитированием
Старый 18.05.2015, 22:44   #2
igoreshka3333
Форумчанин
 
Аватар для igoreshka3333
 
Регистрация: 26.09.2014
Сообщений: 176
По умолчанию

Обрати внимание на конструкторы классов LightDevice и Lamp. Когда ты создаешь обьекты этих классов в качестве аргумента у обьекта класса LightDevice должно быть3 переменных типа int:
Код:
public:
   LightDevice(int,int,int );
а у класса Lamp 4!!! Так работает:
Код:
LightDevice sost(1,1,1);
Lamp cvet(1,1,1,1);
igoreshka3333 вне форума Ответить с цитированием
Старый 18.05.2015, 23:22   #3
spectrum988
Форумчанин
 
Аватар для spectrum988
 
Регистрация: 24.10.2013
Сообщений: 241
По умолчанию

Что не задавать явно значения объектов добавьте конструктор по умолчанию
Код:
LightDevice(){}
spectrum988 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что в программе не так? maxim1592 Паскаль, Turbo Pascal, PascalABC.NET 3 28.05.2014 19:47
Что не так в программе? vadiprog Помощь студентам 1 13.10.2011 23:43
Что-то не так в программе...не пойму что Karina_Vamp Помощь студентам 5 24.12.2010 21:06
что не так в программе? Repz1992 Помощь студентам 8 28.10.2009 19:57
Подскажите что не так в программе? Toxass Общие вопросы Delphi 9 20.12.2008 10:11