考虑以下代码:
struct MyType{};
MyType myFunction() __attribute__ ((warn_unused_result))
{
return MyType{};
}
int main()
{
myFunction();
auto storMyType = myFunction();
}
不存储myFunction
的返回值是一个逻辑错误,我希望在所有编译器上都有编译错误。 Visual Studio 2013是否有任何等价物?
答案 0 :(得分:2)
注释为_Check_return_
注释返回值并声明调用者应检查它。如果在void上下文中调用函数,则检查器会报告错误。
但是,我认为SAL注释仅适用于Visual Studio的Premium和Ultimate版本。