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

Наследование классов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запишите в файл школьную таблицу умножения, после чего выведите данные из файла на экран. http://www.cyberforum.ru/cpp-beginners/thread212012.html
Запишите в файл школьную таблицу умножения, после чего выведите данные из файла на экран.
C++ Sleep Пишу пакмэна , нужно что бы пакмен бегал быстрее чем приведение как это сделать?? пробовал написать так но работает все с одной скоростью while(!kbhit() ) { if(Pause==true) { Sleep(1); http://www.cyberforum.ru/cpp-beginners/thread212000.html
C++ Извлечение корня
Не подскажите функцию в С++ для извлечения корня
Алгоритм Дейкстры C++
День добрый! Есть игровое поле M*M. Количесво графов - N. Есть матрица смежности этого игрового поля. Получить элемент матрицы можно по GetTab(i,j) Помогите написать алгоритм Дейкстры от вершины s до вершины t, при этом сохраняя список посещенных вершин в массив или вектор. Вот, что у меня есть на данный момент(пока без алгоритма Дейкстры): #include <iostream> #include <iomanip> #include...
C++ fseek как правильно использовать http://www.cyberforum.ru/cpp-beginners/thread211983.html
хочу перевернуть все символы в документе без использования памяти (массива, вектора), да и размеры кода уменьшить. #define _CRT_SECURE_NO_DEPRECATE // для подавления замечаний Майкрософт по поводу небезопасности функций fopen #include <stdio.h> #include <conio.h> #include <string.h> #include <locale.h>
C++ функции для перевода из разных систем счисления подскажите функции для перевода из разных систем счисления Добавлено через 1 час 19 минут А такая вообще есть, и если нед то как можно её сделать подробнее

Показать сообщение отдельно
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
16.12.2010, 10:15
Не стоит переопределять поля класса в потомках.Воспользуйтесь акцессорами и мутаторами.
Акцессор это функция, возвращающая некое свойство класса, а мутатор это функция изменяющая некоторое свойство класса.

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
#include <iostream>
#include <cstdio>
 
using namespace std;
 
class A
{
private:
        int a;
        int b;
public:
        A(int x, int y) : a(x), b(y) {} // для краткости
        virtual void Show() { printf("%d %d\n",a,b); }
 
        // accessors
        int GetA() { return a; }
        int GetB() { return b; }
        // mutators
        void SetA(int x) { a=x; }
        void SetB(int y) { b=y; }
};
class B : public A {
// не нужно
//private:
//        int a;
//       int b;
public:
         B(int x, int y) : A(x, y) {}
};
 
class C : public B
{
private:
        // не нужно
        //int a;
        //int b;
        int c;
public:
        C(int x, int y, int z) : B(x, y), c(z) { }
        int GetC() { return c; }
        void SetC(int z) {c=z;}
        virtual void Show()
        {
                printf("%d %d %d\n", GetA(), GetB(), GetC());
        }
};
int main(int argc, char *argv[])
{
 
        B* b = new C(1, 2, 3);
 
        b->Show();
        return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru