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

Исправить ошибку в коде на наследование - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить тип передаваемой в функцию переменной http://www.cyberforum.ru/cpp-beginners/thread1183801.html
Добрый день! Подскажите как правильно объявить переменную elem, которая передаётся в функцию. Выводит ошибку. Менял типы передаваемых значений и теперь оно ругается. Вот сама функция: void lab05::make_seq( T& cont, int N ) // изначально сюда передавалось t_cont& cont { cont.clear(); cont.reserve( N ); for( int i = 0; i < N; ++i )
C++ Удалить из списка К элементов перед элементом с заданным номером, добавить К элементов в конец списка Записи в линейном списке содержат ключевое поле типа int. Сформировать двунаправленный список. Удалить из него К элементов перед элементом с заданным номером, добавить К элементов в конец списка. http://www.cyberforum.ru/cpp-beginners/thread1183773.html
Составьте блок-схему программы C++
составьте пожалуйста блок схему к этой проге #include <iostream> using namespace std; /////////////////////////////////////////////////////////// class Distance // класс английских мер длины { private: int feet; float inches; public:
Виртуальные методы C++
Дан родительский класс Animal (поле кличка). И два наследованных от него класса-потомка: Cat (поле рост - h), Dog(поле рост - h). Полиморфные методы: вес животного (Кот - 15*h*h*h, Собака - 10*h*h*h). Потомки должны содержать виртуальные функции. Для родительского объекта создать статическую функцию выдачи результатов расчета виртуальной функции на экран монитора. #include <iostream> using...
C++ Нужно построить график, а получается прямая линия http://www.cyberforum.ru/cpp-beginners/thread1183755.html
Вот моя програма: в этой проге нужно построить график, вот такой: , но у меня получается просто линия, помогите кто может или хоть подскажите как исправить)
C++ В каждом слове длиннее двух символов все строчные символы заменить прописными Добрый день. Прошу помощи с данной задачей. Прочитать текст программы и в каждом слове длиннее двух символов все строчные символы заменить прописными. Заранее спасибо.. подробнее

Показать сообщение отдельно
katkat95
0 / 0 / 0
Регистрация: 20.03.2014
Сообщений: 11

Исправить ошибку в коде на наследование - C++

21.05.2014, 18:47. Просмотров 221. Ответов 4
Метки (Все метки)

Условие задачи: Создать класс Movie с полями: title (строка), length (в минутах, число). Создать конструктор.
Создать также метод изменения длины (с одним параметром: новая длина в минутах). Создать метод Info, который возвращает информацию о фильме (возвращающий строку). Определить метод проверяющий, что длина фильма (в минутах) больше заданной. Создать производный класс Comedy с дополнительным полем: funniness (строка: “not funny”, “funny”, “very funny”). Создать конструктор и метод Info с дополненными данными.
Вот мой код:
Кликните здесь для просмотра всего текста

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
#include <conio.h>
#include <string>
#include <iostream>
using namespace std;
class Movie
{ private: 
string title;
int length;
public:
Movie(string,int);
void setLength(int);
void info ();
void newLen();
};
Movie::Movie(string t, int l)
{ title=t;
length=l;
};
void Movie::setLength(int newlen)
{
length=newlen;
};
void Movie::info()
{cout<<"Название фильма: "<<title<<endl;
cout<<"Длительность (в минутах): "<<length<<endl;
};
void Movie::newLen()
{ cout<<"Введите новую длину фильма (в минутах)";
int x;
cin>>x;
setLength(x);
if (x>length)
    cout<<"Длина фильма больше заданной"<<endl;
else
    cout<<"Длина фильма меньше заданной"<<endl;
}
class Comedy: Movie
{ 
private:
string funniness;
public:
Comedy (string, int, string);
void Info();
void newLen();
};
Comedy::Comedy(string t1, int len1, string fun): Movie (t1, len1)
{ funniness=fun;
};
void Comedy::Info()
{ info();
cout<<"Смешное ли кино: "<<funniness<<endl;
};
int main ()
{ setlocale(0,"");
Comedy b1("Ведьма", 563, "no funny");
b1.Info();
b1.newLen();
Comedy b2("Книга жизни", 346, "funny");
b2.Info();
system ("pause");
return 0;
}


Выдается ошибка:
Error C2247: 'Movie::newLen' not accessible because 'Comedy' uses 'private' ti inherit from "Movie'
Как исправить это? Подскажите
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru