水木社区手机版
首页
|版面-C++程序设计语言(CPlusPlus)|
新版wap站已上线
返回
1/1
|
转到
主题:c2079错误
楼主
|
anything1999
|
2021-10-08 14:10:03
|
展开
模板类A里面有个内部类Node
template<typename T>
class A
{
.....
private:
struct Node
{
std::array<std::unique_ptr<Node>, 4> children; // 报错
std::vector<T> values;
};
std::unique_ptr<Node> mRoot;
....
};
error C2079: 'A::Node::children' uses undefined class 'std::array<std::unique_ptr<A::Node,std::default_delete<_Ty>>,4>'
with
[
T=StackNode *
]
用的是VS2017, 打开了c++17支持
--
修改:anything1999 FROM 114.249.195.*
FROM 114.249.195.*
2楼
|
anything1999
|
2021-10-08 14:23:45
|
展开
是的,gcc没有问题
【 在 here080 的大作中提到: 】
: gcc没问题
:
--
FROM 114.249.195.*
5楼
|
anything1999
|
2021-10-08 15:12:39
|
展开
忘了还有一个成员变量mRoot, 加上了,您再看看题目
【 在 here080 的大作中提到: 】
: gcc没问题
:
--
FROM 114.249.195.*
6楼
|
anything1999
|
2021-10-08 15:13:32
|
展开
忘了还有一个成员变量mRoot, 加上就出错,请再看看题目,谢谢。
【 在 ArchLinux 的大作中提到: 】
: 奇怪了,我在compiler explorer上试了下MSVC 2017没问题,不是道是不是其他什么代码引起了错误。
:
https://gcc.godbolt.org/z/Y1odsGnae
:
--
FROM 114.249.195.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版