Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
#1

Разработать три класса, которые следует связать между собой, используя наследование - C++

24.08.2014, 13:00. Просмотров 516. Ответов 6
Метки нет (Все метки)

Разработать три класса, которые следует связать между собой, используя наследование:

класс Product, который имеет три элемент-данных - имя, цена и вес товара (базовый класс для всех классов);
класс Buy, содержащий данные о количестве покупаемого товара в штуках, о цене за весь купленный товар и о весе товара (производный класс для класса Product и базовый класс для класса Check);
класс Check, не содержащий никаких элемент-данных. Данный класс должен выводить на экран информацию о товаре и о покупке ( производный класс для класса Buy);
Для взаимодействия с данными классов разработать set- и get-методы. Все элемент-данные классов объявлять как private.


Программа не может доступ к данным Prise из класса Product

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
class Product
{
private:
    int Prise;
    int Ves;
public:
     void setNa(int prise, int ves)
             {
                 Prise = prise;
                 Ves = ves; 
             };
 
             void getZ()
             {
                 cout<<Prise<<endl<<Ves;
             };
             
};
 
class Buy : private Product
{
    private:
        int Colvo;
        int PriseAll;
        int VesAll;
    public:
        void setZ(int Colvo1)
        {
            Colvo=Colvo1;
        };
 
        int setZz()
        {
            return(Prise*Colvo);
        }
        
 
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.08.2014, 13:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разработать три класса, которые следует связать между собой, используя наследование (C++):

Как связать элементы массивов между собой - C++
Допустим, есть структура, хранящая 2 записи, первая ключ, вторая - его значение есть 2 одномерных массива, один хранит (ключ), второй...

Задачку про три города не связанных между собой - C++
Помогите решить циклами и рекурсиями если это возможно. Я вот алгоритм решения все понял но не могу написать код, сижу уже которую неделю...

Как используя закрытое наследование использовать 2 объекта базового класса? - C++
Доброго времени суток. Учусь по книге &quot;Прата С. Язык программирования C++. Лекции и упражнения. Не могу понять упражнение...(глава 14,...

Даны три целых числа, одно из которых отлично от двух других, равных между собой. Определить порядковый номер - C++
не могу понять почему не работает... #include &lt;iostream&gt; using namespace std; int main() { int mas; for (int i=0;...

Даны три целых числа, одно из которых отлично от двух других, равных между собой. Определить порядковый номер - C++
Помогите с задачей по С++. Нужно решить только при помощи &quot;Тернарного оператора&quot;. Даны три целых числа, одно из которых отлично от двух...

Наследование классов. Используя базовый класс Point {x, y, цвет} разработать производные классы механизма двигателя. - C++
Движок (двигатель с кривошипно-шатунным механизмом) Ребята, кто может, помогите очень надо! получу автоматом или пойду на экзамен, вот...

6
Jewbacabra
Эксперт PHP
2646 / 2233 / 840
Регистрация: 24.04.2014
Сообщений: 6,709
24.08.2014, 13:07 #2
Цитата Сообщение от avatar1870 Посмотреть сообщение
Программа не может доступ к данным Prise из класса Product
Prise объявлена как private.
Нужно:
Цитата Сообщение от avatar1870 Посмотреть сообщение
Для взаимодействия с данными классов разработать set- и get-методы.
0
Hrollo
34 / 34 / 6
Регистрация: 05.11.2013
Сообщений: 147
24.08.2014, 13:09 #3
попробуй использовать открытое наследование, а не закрытое

C++
1
class Buy : public Product
и так же можно добавить get и set методы для доступа к закрытым данным базового класса
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
24.08.2014, 13:10  [ТС] #4
Тогда такая ошибка:
4 IntelliSense: член "Product::Prise" (объявлено в строке 53) недоступно c:\Users\рр\Documents\Visual Studio 2012\Projects\Stek\Stek\Stek.cpp 83 11 Stek

Добавлено через 47 секунд
Такая ошибка:
Ошибка 1 error C2248: Product::Prise: невозможно обратиться к private член, объявленному в классе "Product" c:\users\рр\documents\visual studio 2012\projects\stek\stek\stek.cpp 83 1 Stek
0
Jewbacabra
Эксперт PHP
2646 / 2233 / 840
Регистрация: 24.04.2014
Сообщений: 6,709
24.08.2014, 13:11 #5
avatar1870, компилятор же пишет
Цитата Сообщение от avatar1870 Посмотреть сообщение
невозможно обратиться к private член
сделай методы для работы с price
0
ValeryS
Модератор
6705 / 5114 / 482
Регистрация: 14.02.2011
Сообщений: 17,182
24.08.2014, 13:15 #6
Цитата Сообщение от avatar1870 Посмотреть сообщение
класс Product, который имеет три элемент-данных - имя, цена и вес товара (базовый класс для всех классов);
класс Buy, содержащий данные о количестве покупаемого товара в штуках,
расскажи мне логику
класс должен содержать массив(список, вектор) объектов класса Product и не быть наследником
0
ldenush
1 / 1 / 2
Регистрация: 17.02.2013
Сообщений: 12
24.08.2014, 14:36 #7
return(Prise*Colvo);
В этой строке ты пытаешься обратиться к Prise, которая скрыта от наследуемого класса под private. Замени private на protected при объявлении класса Product
0
24.08.2014, 14:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.08.2014, 14:36
Привет! Вот еще темы с ответами:

Разработать класс "Окружность, вписанная в квадрат" используя множесвенное наследование - C++
2. Используя понятие множественного наследования, разработайте класс &quot;Окружность, вписанная в квадрат&quot;.

Разработать другую версию предыдущей задачи используя объекты класса String - C++
Начал изучение строк в С++. Дана задача, которую нужно решить двумя способами. С первой частью - решить задачу используя для ввода строк...

Как связать между собой 3 класса - C#
Подскажите пожалуйста, как можно связать между собой 3 класса.

Связать классы между собой. реализовать ссылки одного класса на другой - C#
Объясните, пожалуйста, что означает тема моей лабораторной :&quot;связать классы между собой. реализовать ссылки одного класса на другой&quot;. Каким...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru