как передать #defined VALUE из QComboBox

принимая во внимание, что у меня есть статический VALUE, который уже определен в файле заголовка (который содержит другие определенные статические значения) следующим образом:

#defined VALUE  2

Я хотел бы обновить VALUE, передав текст, взятый из QComboBox, в #defined в mainwindow.cpp, поэтому я использую следующую строку:

#defined VALUE ui->QComboBoc->currentText();

но не работает, что именно я сделал не так?


person hashDefine    schedule 16.05.2013    source источник


Ответы (1)


Я предлагаю вам узнать о препроцессоре C++, VALUE фиксируется во время компиляции. Вам придется заменить ее глобальной статической переменной или, что еще лучше, исправить вашу архитектуру.

person cmannett85    schedule 16.05.2013
comment
Спасибо за ответ, но я не могу изменить архитектуру, так как являюсь членом большой команды. Итак, сейчас я сосредоточен на том, как обновить это фиксированное значение до того, что мне может понадобиться. - person hashDefine; 16.05.2013
comment
@ user2390046 Я не думаю, что вы понимаете ситуацию, вы не можете обновить фиксированное значение - это оксюморон. - person cmannett85; 16.05.2013
comment
Хорошо, я попытаюсь изменить свой подход на что-то другое .. все равно спасибо - person hashDefine; 16.05.2013
comment
Я попытаюсь удалить определенное ЗНАЧЕНИЕ из файла заголовка и определить его в своем коде. - person hashDefine; 16.05.2013
comment
@ user2390046: Я бы не стал сосредотачиваться на слове «архитектура». Вам поручено изменить VALUE. Это означает, что она должна стать переменной. Ваша команда это поймет. Кроме того, вы должны подключить сигнал QComboBox::currentIndexChanged к слоту и из этого слота обновить переменную VALUE. - person MSalters; 17.05.2013