0 / 0 / 0
Регистрация: 06.12.2015
Сообщений: 2
|
||||||||||||||||||||||||||
1 | ||||||||||||||||||||||||||
Обращение к переменным класса06.12.2015, 17:14. Показов 1791. Ответов 3
Метки нет (Все метки)
dialog.h
mainwindow.h
dialog.cpp
mainwindow.cpp
main.cpp
Вопрос такой... в main.cpp создается экземпляр класса MainWindow - w. В MainWindow находится public переменная x1. Как из dialog.cpp получить доступ к этой переменной?
0
|
06.12.2015, 17:14 | |
Ответы с готовыми решениями:
3
Экземпляры класса. Обращение к методам и переменным класса Как получить доступ к переменным одного класса из методов другого Обращение к переменным одного метода из другого внутри класса Обращение к переменным this |
683 / 458 / 160
Регистрация: 01.10.2015
Сообщений: 1,264
|
|
06.12.2015, 17:38 | 2 |
А для чего вам необходим доступ к данным MainWindow из Dialog?
Кстати, данные (это я про int x1 ) должны объявляться в private-секции класса, а вот методы, реализующие доступ к ним - в public. Инкапсуляцию никто не отменял...
1
|
0 / 0 / 0
Регистрация: 06.12.2015
Сообщений: 2
|
|
06.12.2015, 18:07 [ТС] | 3 |
0x90h, Переменных будет 20+, для каждого делать методы слишком долго.
Добавлено через 11 минут Будет много переменных , доступ к которому должен быть из всех других классов форм. Добавлено через 11 минут А как обратиться к методу? Я создал в mainwindow.h метод void test, но его тоже не видно из Dialog
0
|
683 / 458 / 160
Регистрация: 01.10.2015
Сообщений: 1,264
|
|
06.12.2015, 18:13 | 4 |
Chack, даже если их будет 1000 и больше, смысл инкапсуляции не в этом, данные-члены класса доступны в любом из методов этого класса напрямую, а помещая данные в private-секцию класса, вы просто запрещаете неконтролируемый доступ к данным извне класса, а взамен предоставляете интерфейс для контролируемого доступа в публичной части, т.е. методы-геттеры и методы-сеттеры.
Смысл диалога - прервать выполнение программы с целью привлечь внимание пользователя, осуществить вывод информации или запросить дополнительные данные/инструкции от пользователя, раз уж вы используете потомков от QDialog - вызывайте их через exec() , анализируйте возвращаемое методом значение, в зависимости от результатов анализа или получаете из диалога данные (предусмотрев для этого в классе диалога публичный метод, возвращающий данные, и вызвав его), или игнорируете их. А поскольку все это осуществляется в методах MainWindow, то вы можете оттуда напрямую обращаться к его приватным данным.
1
|
06.12.2015, 18:13 | |
06.12.2015, 18:13 | |
Помогаю со студенческими работами здесь
4
Обращение к переменным Обращение к переменным из xaml Обращение к именам переменным Инициализация и обращение к переменным Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |