Russian Qt Forum
Ноябрь 22, 2024, 18:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qtimer + ncurses  (Прочитано 6604 раз)
eg015t
Гость
« : Июль 22, 2016, 09:46 »

Добрый день, пробую применить библиотеку ncurses в консольном приложении Qt. Но проблема в том, что макросы в ncurses конфликтуют с сигналом QTimer.
Код:
/usr/include/qt4/QtCore/qtimer.h:92: ошибка: 'stdscr' is not a type  void timeout();

timeout в ncurses.h
Код:
#define timeout(delay) wtimeout(stdscr,(delay))

timeout в qtimer.h
Код:
Q_SIGNALS: void timeout();

Как можно избежать данной проблемы? Заранее, спасибо!

Записан
Bepec
Гость
« Ответ #1 : Июль 22, 2016, 10:11 »

Ну, это дефайны. Тут или в ncurses править, либо в Qt.
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #2 : Июль 22, 2016, 10:14 »

А если ncurses инклудить после QTimer?
Записан

Johnik
Крякер
****
Offline Offline

Сообщений: 339


Просмотр профиля
« Ответ #3 : Июль 22, 2016, 10:18 »

использовать #undef timeout
Записан
Bepec
Гость
« Ответ #4 : Июль 22, 2016, 10:19 »

Гыы, undef сломает ncurses скорее всего.
Записан
eg015t
Гость
« Ответ #5 : Июль 22, 2016, 10:25 »

Спасибо за ответы! Править заголовочники  ncurses или QTimer - не вариант... Пострадает переносимость... А вот ncurses инклуд после QTimer помог! Хотя бы  приложение собралось, буду смотреть дальше, при выполнении как себя поведет!

На вскидку - все работает. Может у кого будет похожая проблема.
« Последнее редактирование: Июль 22, 2016, 10:45 от eg015t » Записан
Johnik
Крякер
****
Offline Offline

Сообщений: 339


Просмотр профиля
« Ответ #6 : Июль 22, 2016, 10:58 »

Гыы, undef сломает ncurses скорее всего.
при грамотном использовании не сломает
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #7 : Июль 22, 2016, 11:43 »

А вот ncurses инклуд после QTimer помог!
Или так
Код
C++ (Qt)
#include <ncurses.h>
#undef timeout
#include <QTimer>
 
Записан
_Bers
Бывалый
*****
Offline Offline

Сообщений: 486


Просмотр профиля
« Ответ #8 : Июль 22, 2016, 13:06 »

Как можно избежать данной проблемы? Заранее, спасибо!

#undef
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.155 секунд. Запросов: 22.