【发布时间】:2016-05-17 18:33:02
【问题描述】:
我在 Visual Studio 2015 Update 1 上运行此代码,并且在下面指出的位置出现非常奇怪的访问冲突错误。如果我将表达式简化为 int mid = (max - min) / 2; 之类的代码,则代码可以正常工作。
#include <experimental/generator>
std::experimental::generator<int> range(int min, int max)
{
int mid = min + (max - min) / 2; // write access violation
yield mid;
}
int main()
{
for (auto x : range(10, 20)) { }
}
有谁知道可能是什么问题?我怀疑它可能是一个编译器错误。
【问题讨论】:
标签: c++ visual-c++ generator access-violation