C++:未使用函数返回值时如何触发编译器错误?

标签 c++ compiler-errors return-value

假设我有一个标准化函数定义为:

Vec3f Vec3f::getNormalized() const {
   return (*this)/this->length();
}

如果使用此函数而没有存储它的返回值,是否有可能以某种方式创建编译时错误? ;

v.getNormalized(); // which most definitely is a typo

..而不是..

v = v.getNormalized(); 

最佳答案

在 GCC 中,使用 -Wunused-result 在函数的返回值被忽略时触发警告。如果您想要错误而不是警告,请使用 -Werror 将所有警告转换为错误。如需更多信息,请参阅 GCC Warning Options

似乎没有针对 Visual C++ 编译器的等效警告。 (如果我错了,请使用 Visual C++ 信息编辑此回复。)

关于C++:未使用函数返回值时如何触发编译器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5803623/

相关文章:

javascript - 从 $.POST 返回值

c++ - 在 Windows 关闭之前关闭我的程序

C++ CMake 找不到 Boost 1.63(使用 CLion IDE)

c++ - 指向引用 : changing the orignal value 的指针

compiler-errors - F#签名了解: “the -> operator and Compiler Errors”

c - 为什么我的方法不返回 char*

c++ - 在 m/n 的二维数组中搜索行和列的元素

c++ - 从 ‘const char*’ 到 ‘char’ 的无效转换

c - 错误 : A label can only be part of a statement

javascript - 函数将数组返回到另一个函数>未捕获的类型错误