Using Qt Creator C++ 11, nullptr is keyworded?

2020-05-19 19:34发布

问题:

I'm using C++11 using Qt Creator.

"warning: identifier 'nullptr' is a keyword in C++11 [-Wc++0x-compat]"
"error: 'nullptr' was not declared in this scope"

This is on code that works elsewhere, the relevant part being:

... = nullptr;

What might be the problem?

Is this not already a keyword, isn't it's scope global?

回答1:

Open your .pro file from inside QtCreator and add this

QMAKE_CXXFLAGS += -std=c++0x


回答2:

Try adding the below lines to your cpp source code

#ifndef _GXX_NULLPTR_T
#define _GXX_NULLPTR_T
   typedef decltype(nullptr) nullptr_t;
#endif 
/* C++11 */