visual-studio-2017 - Visual Studio 2017:规则集不会执行
问题描述
我想定义一组在编译时检查的自定义规则。但这似乎不起作用。
但是,当我创建一个包含完全相同规则的自定义规则集时,我将不会收到预期的警告。
有什么问题?
编辑:
void f(std::string& i) {
std::string s = i;
cout << s;
}
int main()
{
std::string s ("abc");
f(s);
}
这给了我预期的警告警告C26460 函数“f”的引用参数“i”可以标记为 const (con.3)。在第一种情况下。即使我创建了一个包含所有可用规则的自定义规则集,我也不会收到任何警告。
编辑:规则集操作必须更改一次才能启用。当我创建一个仅包含 const-checks 的新规则集时,我将得到一个不起作用的 .ruleset,如下所示:
在规则集编辑器中,它看起来像这样:
当我将其操作从警告更改为错误时:
然后.ruleset 为每个测试用例获取额外的行:
当我将操作更改回警告时,它看起来像这样:
现在它按预期工作。
解决方案
推荐阅读
- kotlin - 为什么其中一些 kotlin 协程从未启动?
- c++ - 当同样好的转换函数可用时,为什么重载决议更喜欢移动构造函数而不是非特殊构造函数?
- go - 如何在 Go 中运行 .bat 文件
- android - INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION
- java - SQL/Hibernate/Spring 事务之间的区别
- angular - Angular BehaviorSubject 和错误异常
- html - 在 woocommerce 加载类期间隐藏 css :before 元素
- git - 如何在家中设置 git lfs 服务器?
- python-3.x - 如果名称相同,则将 2 个目录中的同名文件过滤到第三个文件夹中
- javascript - MongoDB 从请求中传递查询