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

Наследование - вызов конструкторов и деструкторов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Почему перегруженные операторы ввода/вывода нельзя сделать членами класса? http://www.cyberforum.ru/cpp-beginners/thread1567870.html
Добрый вечер, Решаю домашнее задание, и вот вопрос возник. Создал класс и перегрузил ввода/вывод. Но не нашел информации почему перегрузки ввода/вывода friend. Почему функция не может быть...
C++ Найти площадь заштрихованной области Всем Доброго Времени суток. Мне в техникуме дали задание (прикреплено), и я почему-то совсем не могу понять как это решить... знания в программированию не самые худшие, а во о в математике... http://www.cyberforum.ru/cpp-beginners/thread1567862.html
C++ Оператор взятия адреса
Доброй ночи, оператор взятия адресса не перечислен среди Special member functions, но он реализуется компилятор по умолчанию, если его не реализовать явно. #include <iostream> using...
C++ Алгоритм поиска пути и прорисовка его
Есть класс Карта #ifndef MAP_H #define MAP_H #include <SFML\Graphics.hpp> class Map{ private: int m_level; public:
C++ Undeclared identifier (cout, endl, cin) http://www.cyberforum.ru/cpp-beginners/thread1567849.html
#include "iostream" #include "stdafx.h" #include "cmath" #include "cstdio" using namespace std; int main(void) { int v; cout <<"Vvedite vozrast: "<<endl;
C++ Графы.Список смежности. Поиск в глубину Разработать программу, которая читает числа N, M - кол-во вершин и рёбер графа. Программа сохраняет граф в виде списка смежности и выполняет поиск в глубину. На экран нужно вывести вершины в порядке... подробнее

Показать сообщение отдельно
hoggy
6672 / 2856 / 491
Регистрация: 15.11.2014
Сообщений: 6,364
Завершенные тесты: 1
07.11.2015, 13:21
Цитата Сообщение от mporro Посмотреть сообщение
Мне то зачем это рассказывать?
Расскажите это Саттеру.
мне просто стало любопытно:
вы приводите в качестве аргумента некий авторитет: Саттера.
но понимаете ли вы его?
или вы бездумно верите авторитетам?

вы осознаете, зачем нужно делать виртуальные-функции члены приватными?

я читал Саттера если что.
и мне нет смысла ему что-то рассказывать.

потому что подобный тезис:
Guideline #2: Prefer to make virtual functions private.
That's easy. This lets the derived classes override the function to customize the behavior as needed, without further exposing the virtual functions directly by making them callable by derived classes (as would be possible if the functions were just protected). The point is that virtual functions exist to allow customization; unless they also need to be invoked directly from within derived classes' code, there's no need to ever make them anything but private. But sometimes we do need to invoke the base versions of virtual functions (see the article "Virtually Yours"[5] for an example), and in that case only it makes sense to make those virtual functions protected, thus:

(ц)Саттер.
практически целиком и полностью совпадает с моим собственным (см #35).

разница между моим подходом, и подходом Саттера заключается лишь в одном:
я четко разделяю, что есть частная собственность,
а что предназначено для наследников.

Саттер же стремится в принципе выполнить максимально жесткий контракт.
он стремится сделать приватным все, что только возможно.
и не делает приватным лишь то,
что объективно необходимо сделать не приватным.

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