如果当标识符的库未直接包含在源中时,是否可以强制视觉工作室抛出错误?

Is it possible to force visual studios to throw an error if an identifiers is used when its library isn't directly included in the source?

本文关键字:是否 视觉 工作室 错误 出错 标识符 包含 如果      更新时间:2023-10-16

编译以下源代码时:

int main()
{
  exp(1.0);
  return 0;
}

共采样器给出以下错误:error C3861: 'exp': identifier not found因为我没有行:#include <iostream>上面的main()

但是,如果间接包含库,则视觉工作室不会显示错误。 例如,即使 exp 的依赖项在 <cmath> 中,以下代码也可以毫无问题地编译。

#include <istream>
int main()
{
  exp(1.0);
  return 0;
}

这是因为<iostream>包括<istream>包括<ostream>包括<ios>包括<xlocnum>包括<cmath>

如果我没有明确包含库但尝试使用其标识符之一,有没有办法让视觉工作室抛出错误?

你可能想看看包含你使用的内容。它是一个基于 clang 的工具,试图检测缺失和多余的包含指令。

相关文章: