当没有显式关键字与单参数构造函数一起使用时,编译器可以发出警告吗?
Can compiler give warning when no explicit keyword used with one-argument constructor?
有时我搬起石头砸自己的脚忘记为单参数构造函数使用 "explicit" 关键字。 (我指的不是复制/移动。)有没有办法让编译器在这种情况下发出警告?
如果 GCC 有这样做的选项,我还没有找到。这里是a list of warning options in GCC 4.8.2;请参阅您自己的版本的类似文档以确保。
我使用 CppCheck 来获得这种行为。
cppcheck 或 clang-tidy 等静态代码分析器会警告您并提供许多其他有用的检查。
有时我搬起石头砸自己的脚忘记为单参数构造函数使用 "explicit" 关键字。 (我指的不是复制/移动。)有没有办法让编译器在这种情况下发出警告?
如果 GCC 有这样做的选项,我还没有找到。这里是a list of warning options in GCC 4.8.2;请参阅您自己的版本的类似文档以确保。
我使用 CppCheck 来获得这种行为。
cppcheck 或 clang-tidy 等静态代码分析器会警告您并提供许多其他有用的检查。