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

Наследование и защищенные члены - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Класс для работы с матрицами 2х2 http://www.cyberforum.ru/cpp-beginners/thread275028.html
Доброго времени суток. Очень нужна ваша помощь . Мне нужно создать класс , обеспечивающий работу с матрицами 2х2 . В общем то , описание класса есть , меню для диалога с пользователем есть ....
C++ Составить программу для вычисления точного значения n!, где n > 12 Ребята помогите кто может,нужно написать прогу на языке с++..вот задание: Составить программу для вычисления точного значения n!, где n > 12. пожалуйста помогите.. http://www.cyberforum.ru/cpp-beginners/thread275022.html
C++ Векторное произведение
Помогите пожалуйста написать программу на ВС31 или DevCpp, вот условие ввести коорбинаты N векторов на плоскости. Написать функцию, определяющую модуль векторного произведения двух векторов....
C++ Модули. Многофайловые проекты
Определить функцию, возвращающую НОД нескольких чисел. Выполнить перегрузку функции для следующих типов параметров: 7.1. Два параметра типа int. 7.2. Два параметра типа long. 7.3. Два параметра...
C++ Перегрузка функций http://www.cyberforum.ru/cpp-beginners/thread275013.html
Определить функцию, возвращающую количество недель до конца года. Выполнить перегрузку функции для следующих типов параметров: 7.1. Структура «дата» (год, месяц, день). 7.2. Три целочисленных...
C++ Вычислить определенные интергралы на С++ интеграл от 0 до 0,5 (4cos^2(x)dx интеграл от 4 косинуса кадрат х помогите пожалуйста!!! подробнее

Показать сообщение отдельно
kravam
быдлокодер
1702 / 889 / 45
Регистрация: 04.06.2008
Сообщений: 5,498
13.04.2011, 18:12
Ну у меня в учебнике написано по поводу protected
"Член может быть доступен из функции, только если она член класса или подкласса"

То есть вроде как всё верно, не фиг через адреса объектов, которые не являются старшими родственниками, получать доступ к приватным членам.

А тогда тем страннее выглядит определение set в классе User
C++
1
2
3
4
5
6
        virtual bool set(User* user, char *name)
        {
                cout<<"Error - access denied"<<endl;
                cout << user->name;
                return false;
        }
Это компилится. То есть В ЭТОМ случае компилятор почему-то согласен- да, пусть будет объект
A типа User и объект B типа User. И мы спокойно передадим объекту A адрес объекта B. А тот, в свою очередь, даст объекту A значение name.

И это при всём при том, что A и B могут иметь разных отцов, то есть между ними вообще никаких родственных связей может не быть!
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru