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

Видимость в классах - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Потоки. Ввод данных. http://www.cyberforum.ru/cpp-beginners/thread341896.html
Если согласится на ввод второго человека, пропускается ввод его имени... вроде ввод все правильно, не знаю в чем беда :wall: #include"stdafx.h" #include <iostream> using namespace std; class...
C++ Проблема с открыванием У меня компилятор Dev-C++ версии 4.9.9.2 набрал текст скомпилировал удачно Компилятор: Default compiler Выполнение g++.exe... g++.exe "C:\Documents and Settings\777\Мои документы\Мои... http://www.cyberforum.ru/cpp-beginners/thread341886.html
C++ Построение графика по заданному математическому закону
я только недавно изучаю С++, на работе поставили задачу реализовать построение графика по заданному математическому закону: An = An-1 + (1/m)*СO, где n и n-1 это соответственно предыдущий и следущий...
Из char[] в string C++
Есть массив char ch и переменная string str, необходимо второй элемент массива ch, т.е. ch передать в переменную str (типа str = ch). Как это сделать? Вечные мучения с этими строками в C++.
C++ Отличие CLR от Win32 http://www.cyberforum.ru/cpp-beginners/thread341855.html
Всем доброго времени суток. Подскажите пожалуйста чем отличается консольное приложение CLR от консольного приложения Win32. Это при создании проекта в Visual Studio.
C++ Как работать с <vector> Вот есть код (алгоритм Грехема). Про vector как им пользоваться мало где написано, если написано то на английском или ещё каком-нибудь другом языке. Хочу узнать как ввести данные и как это работает... подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
14.08.2011, 16:20
Цитата Сообщение от parkito Посмотреть сообщение
Дана программа

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
#include<iostream>
using namespace std;
class a
{protected:
int a1;
public:
    void fc()
    {a1=5;cout<<a1<<endl;
    }
};
class b :public a
{public:
void fc1()
{cout<<a1;}
};
int main ()
{setlocale(LC_ALL,"Rus");
a a1;
b b1;
a1.fc();
b1.fc1();
cin.get();
cin.get();
return 0;
}
Как сделать так чтобы
C++
1
a1
была видна в классе b ?
a1 является видимой в классе B, так как у ней уровень доступа protected, а потому все наследуеимые классы, если они наследуют класс a открыто, имеют к ней доступ, как к любой своей переменной с уровнем доступа private.

Другое дело, что эта переменная ни в классе a, ни в классе b не инициализирована. Поэтому можно ее инициализировать в списке инициализации конструктора класса a. Например

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