Qt warning: no return statement in function returning non-void [-Wreturn-type] Qt经验集

  • A+
所属分类:Qt经验集

问题

函数没有写返回值

后果

QtCreator中以Debug模式编译程序时,可能没有问题;但是Release模式编译后,运行程序就会出现崩溃,且问题报错很奇怪,定位错误代码比较难。这个时候,就需要养成正确的编写习惯了,可惜的是,默认情况下,QtCreator编译报错只会将其认为是警告,很多时候开发人员会忽视警告

解决措施

将该警告升级为错误。pro文件中加上这句话:

QMAKE_CXXFLAGS += -Werror=return-type #函数有返回值

重新编译项目即可

补充内容

QMAKE_CXXFLAGS += -Werror=return-type #函数有返回值

QMAKE_CXXFLAGS += -Werror=return-local-addr #返回局部变量地址

QMAKE_CXXFLAGS += -Werror=missing-field-initializers #缺少初始值设定项

QMAKE_CXXFLAGS += -Werror=maybe-uninitialized #变量可能没有被初始化

QMAKE_CXXFLAGS += -Werror=delete-non-virtual-dtor #

QMAKE_CXXFLAGS += -Werror=unused-but-set-variable #设置了但未使用的变量

QMAKE_CXXFLAGS += -Werror=parentheses #括号不匹配

QMAKE_CXXFLAGS += -Werror=pointer-arith #指针用在了算术运算

QMAKE_CXXFLAGS += -Werror=reorder #警告构造函数的顺序不会被使用

QMAKE_CXXFLAGS += -Werror=format-extra-args #格式不对

QMAKE_CXXFLAGS += -Werror=unused-variable #未使用的变量

Qt大课堂-QtShare

发表评论

您必须登录才能发表评论!