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

Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать класс время с данными-членами часы, минуты, секунды http://www.cyberforum.ru/cpp-beginners/thread330022.html
отучилась на программиста уже год, но пока что как-то тяжко с заданиями, тем более с классами, не успели пройти их... помогите пожалуйста решить Создать класс время с данными-членами часы, минуты,...
C++ Как послать своё сообщение другому приложению? #define WM_MYMESSAGE 2000 void main() { HWND hWnd; hWnd = ::FindWindow(NULL,"MyApp"); ::SendMessage(hWnd,WM_MYMESSAGE,0,0); } http://www.cyberforum.ru/cpp-beginners/thread330016.html
C++ Класс "Студент", реализовать динамический список "Группа студентов"
реализовать динамический список " группа студентов". Узел: -группа -фамилия Функции списка: -добавление по алфавиту -удаление указанного -очистка списка -поиск студента -печать...
Связь указателей и одномерных массивов. Динамический одномерный массив C++
Ребят помогите написать программу.В пятницу срочно надо сдать! Требования и общие указания к заданиям: • разработать класс для работы с одним или несколькими одномер-ными динамическими массивами,...
C++ Чтение из файла, запись в файл http://www.cyberforum.ru/cpp-beginners/thread329979.html
Тут такая у меня проблема. 1) Не работает цикл в майне. Как его правильно организовать? 2) И, похоже, чтение из файла все-таки, неправильно организовано. 3) И оошшшень хотелось бы поиск в файле...
C++ двойная буферизация Здравствуйте. Ребят не сочтите за труд, помогите разобраться. Проблема собственно вот в чём: Пишу тетрис, в окошке находится стакан с фигурами, а на фоне нужно чтобы была некая картинка. Сначала... подробнее

Показать сообщение отдельно
Bers
Заблокирован
05.07.2011, 23:57
я рекомендую вам в корне изменить подход к проектированию.
Вот лично я это делаю так:

0. Определение предназначения класса. Важно четко понимать, на кой черт он вообще нужен.
1. Продумываю дизайн кода. То бишь, как я вижу использование будущего класса.
Например:

C++
1
2
  CMatrix myMatrix(стартовые арг);
  myMatrix.Work();  //объект выполняет то, ради чего он собственно и был создан.
3. Только теперь я начинаю размышлять о том, какого будит внутреннее устройство класса.
Какие вспомогательные классы он будит использовать, и тп.

Предположим, я пришёл к мнению, что мой класс CMatrix должен использовать
вспомогательный класс CDiagonal. Ну вот так мне захотелось!

Что из этого следует? Из этого следует, что класс CMatrix уже должен знать о существовании
класса CDiagonal. То бишь, CDiagonal уже должен быть спроектирован и создан, причём -
отдельно от CMatrix. CDiagonal ничего не знает ни о каких матрицах, и знание это ему для его
собственной работы не нужно! Это называется "разделение ответственности между классами"

Таким образом получается, что сначала проектируется и собирается класс CDiagonal.
И только потом собирается класс матрицы. Внутри неё объявляется класс диагонали с
красивым именем, ну и матрица может использовать интерфейс диагонали. Но не наоборот.
Диагональ оказывается глубоко запрятанной в матрице, а пользователю матрицы в принципе
даже знать не обязательно о том, что прячеццо в недрах Матрицы.

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