首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Error C1001:编译器中发生了内部错误

Error C1001:编译器中发生了内部错误
EN

Stack Overflow用户
提问于 2016-06-02 21:38:20
回答 1查看 1.8K关注 0票数 0

我在一个C++模板化任务中有一个虚拟函数,当它在Visual 2015中编译时(我尝试了调试/发布和x86/x64的所有组合),它在以下代码行的编译器错误C1001中始终失败:

代码语言:javascript
复制
e_Ty *d(new e_Ty[l]);

其中e_Ty是类的模板参数。只有当我使用e_Ty设置为std::pair<const int &, int &>的模板类时,才会发生此错误。这是否是不应该工作的正当理由,还是MSVC中的一个bug?

编辑

备注:

  • l是一个局部变量,它是提前声明的(由于函数调用而赋值的)。
  • 我尝试过使用禁用优化、使用auto和使用赋值样式的初始化,但这些方法都不起作用。
  • e_Tyint时,代码编译得很好。
EN

回答 1

Stack Overflow用户

发布于 2018-06-12 12:32:43

它是否与:C++11 constexpr causes compiler's internal error (C1001)有关,值得一看

如果涉及到一个参数,则报告VS2015和VS2017编译器在与模板代码一起使用时会崩溃。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37602558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档