Russian Qt Forum

Программирование => Общий => Тема начата: Dexel от Декабрь 21, 2018, 13:48



Название: Как исправить warning: zero as null pointer constant?
Отправлено: Dexel от Декабрь 21, 2018, 13:48
Код:
void MainWindow::voiceFraze()
{
QPushButton *button = qobject_cast<QPushButton*>(sender());
if(button != NULL)
{

Здесь проверка - вызов был от кнопки или слота.


Название: Re: Как исправить warning: zero as null pointer constant?
Отправлено: Hellraiser от Декабрь 21, 2018, 14:13
nullptr


Название: Re: Как исправить warning: zero as null pointer constant?
Отправлено: ViTech от Декабрь 21, 2018, 14:23
Попробуйте:
Код
C++ (Qt)
   if (button != nullptr)

или просто:
Код
C++ (Qt)
   if (button)

или так ещё можно:
Код
C++ (Qt)
void MainWindow::voiceFraze()
{
   if (QPushButton* button = qobject_cast<QPushButton*>(sender()))
   {
или короче:
Код
C++ (Qt)
void MainWindow::voiceFraze()
{
   if (auto button = qobject_cast<QPushButton*>(sender()))
   {