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

Невозможно обратиться к protected член, объявленному в классе "Counter" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Апишите программу которая может перечислять членов ордена по действительным именам по должностям http://www.cyberforum.ru/cpp-beginners/thread1232611.html
4.Вступив в Благотворительный орден программистов(Benevolent Order of Programmers- BOP), вы можете быть известны на собраниях ВОР под своим действительным именем, по названию должности или по секретному псевдониму ВОР. Напишите программу которая может перечислять членов ордена по действительным именам по должностям по секретным псевдонимам или по индивидуально заданным опциям. В основу программы...
C++ Создание объекта в области памяти Не могу разобраться с таким вопросом. Пусть есть у нас класс Example (у него есть стандартный конструктор и неважно что он делает). и имеется следующая функция: void foo(){ Example one(); Example two; Example *three = new Example; Example *four = new Example(); } http://www.cyberforum.ru/cpp-beginners/thread1232597.html
C++ Как сделать преобразование в string для своего класса
есть 2 строчки кода Var a = "dfsfdfd"; string b = (string)a; в класса есть перегруженный оператор operator string (); но компилятор на него не реагирует и тупо не хочет компилировать, сразу пишет ошибку, почему и как сдела чтобы работало? Ошибка 12 error C2440: приведение типов: невозможно преобразовать "Var" в "std::string" c:\users\admin\documents\visual studio...
C++ Требуется собрать кучу object в один контейнер и искать их по object_name
Пусть дана структура вида: struct object { object(const std::string&_object_name):object_name(_object_name){} bool operator<(const object&o)const{return object_name<o.object_name;} bool operator<(const std::string&str)const{return object_name<str;} std::string object_name; char some_data; }; Требуется собрать кучу object в один контейнер и искать их по object_name....
C++ Нужно продублировать первое чётное число в односвязном списке http://www.cyberforum.ru/cpp-beginners/thread1232561.html
Написал вот такой код, он рабочий, но никак не пойму, что нужно сделать, чтоб выполнялась поставленная задача. Прошу помочь. #include "stdafx.h" #include <iostream> #include <string.h> #include <conio.h> using namespace std; //описание структуры struct point { int num;//информационное поле
C++ Как циклически организовать задание значений, пока не получится то, что надо Делал игру кубики нужно сделать ничью что бы когда выбивало два одинаковых значений перекручивало сначала если нету два одинаковых значения переходил к следующему сигменту кода подробнее

Показать сообщение отдельно
DrOffset
6841 / 4052 / 924
Регистрация: 30.01.2014
Сообщений: 6,855
24.07.2014, 19:21     Невозможно обратиться к protected член, объявленному в классе "Counter"
Цитата Сообщение от alsav22 Посмотреть сообщение
Базовый класс для наследника разве можно назвать чужим? Вот это и смущает
Ну тут разрешается логическое противоречие. С одной стороны protected доступ не разрешается для внешних сущностей. С другой стороны, мы наследуемся от класса с protected полями. Вот поэтому-то доступ может быть осуществлен только через указатель (this тоже относится) или ссылку на класс наследника. protected подразумевает, что мы проделегировали права доступа к защищенным полям через экземпляр текущего класса (наследника). Как только мы теряем тип (меняем например на базовый), то эти правила перестают работать, точно так же, как они перестают работать при обычном внешнем доступе. Иначе получилось бы, что одна и та же запись (обращение к полю через указатель на базовый класс) совершенно по-разному себя ведет в зависимости от того находится ли она внутри метода класса или снаружи. Если принять, что конструктор это функция, пусть и специальная, то легко можно представить, что для нее работают все те же правила, что и для других функций и переменных. Делать в этом случае какое-то исключение было бы неправильно.
 
Текущее время: 14:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru