6 / 3 / 0
Регистрация: 04.05.2018
Сообщений: 407
|
|||||||||||
1 | |||||||||||
Объявление переменной для методов02.07.2019, 15:38. Показов 2312. Ответов 9
Метки нет (Все метки)
Здравствуйте! Мне необходимо несколько глобальных переменных для моего проекта, обьявил я их в файле mainwindow.h в public. Использую я их только в файле mainwindow.cpp (Наверное нужно обьявлять переменные не в public а в private?). Далее допустим у меня есть свой виджет (условно назовем его MyWidget). в файле MyWidget.dh я пишу следующие строки:
Вопрос: как сделать так, чтобы данный метод увидел мою переменную и мог ее изменять?
0
|
02.07.2019, 15:38 | |
Ответы с готовыми решениями:
9
Netbeans, qt, c++ подчеркивает как ошибку объявление переменной Шаблонный класс для работы с разными типами данных и объявление методов в main Объявление переменной для хранения безразмерного массива Подскажите код VBA для Excel - Объявление переменной |
284 / 173 / 62
Регистрация: 13.03.2019
Сообщений: 419
|
||||||||||||||||
02.07.2019, 17:10 | 2 | |||||||||||||||
Здаётся мне, что ты объявил не глобальные переменные.
В .h файле вне всяких секций, вне объявлений классов, лучше всего в отдельном .h файлеБ например, global_variables.h пишем
1
|
зомбяк
1584 / 1218 / 345
Регистрация: 14.05.2017
Сообщений: 3,939
|
|
02.07.2019, 17:12 | 3 |
В реализации MyWidget::mousePressEvent вызывать обработку класса-родителя, т.е. QWidget::mousePressEvent (или кто там родитель)
0
|
6 / 3 / 0
Регистрация: 04.05.2018
Сообщений: 407
|
|
02.07.2019, 17:16 [ТС] | 4 |
Т.е. я должен объявить глобальную переменную 2 раза, учитывая синтаксис в .h и .cpp!?
Спасибо вам огромное, Анна Добавлено через 53 секунды TRam_, Для чего? А, если это способ избежать глобальных переменных, то понял
0
|
284 / 173 / 62
Регистрация: 13.03.2019
Сообщений: 419
|
|
02.07.2019, 17:26 | 5 |
в .cpp эта переменная не просто объявляется, но и определяется. то есть, выделяется память. в .h файле объявление без выделения памяти. Это информация для всех остальных, мол, есть такая переменная.
1
|
661 / 662 / 106
Регистрация: 29.05.2015
Сообщений: 3,967
|
|
02.07.2019, 19:49 | 6 |
Если есть несколько файлов .cpp и хедеров соответственно - как правильно объявить переменную, которую будет видно во всех этих файлах?с
0
|
278 / 87 / 37
Регистрация: 10.06.2015
Сообщений: 261
|
|
02.07.2019, 20:46 | 7 |
В заголовочном файле, который будут подключать все остальные, пишешь объявление с ключевым словом extern. В один из файлов исходников дописываешь определение для этой переменной.
0
|
6 / 3 / 0
Регистрация: 04.05.2018
Сообщений: 407
|
|
02.07.2019, 20:52 [ТС] | 8 |
Lolobotik, На сколько ваше решение лучше решения которое предложила Анна?
0
|
661 / 662 / 106
Регистрация: 29.05.2015
Сообщений: 3,967
|
|
02.07.2019, 20:59 | 9 |
0
|
278 / 87 / 37
Регистрация: 10.06.2015
Сообщений: 261
|
|
02.07.2019, 21:48 | 10 |
Ну извиняй,
это и есть глобальная переменная. Какой ответ ты ожидал увидеть? Что можно обойтись без них? Ну можно. Ни на сколько. Это оно и есть. Я просто не так понял предыдущего оратора. Он, видимо, просил альтернатив глобальным переменным, но сформулировал это своеобразно.
0
|
02.07.2019, 21:48 | |
02.07.2019, 21:48 | |
Помогаю со студенческими работами здесь
10
Объявление методов Объявление методов в интерфейсах Объявление методов вне класса Объявление заранее неизвестного количество методов в цикле Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |