严重性 代码 说明 项目 文件 行 禁止显示状态 错误(活动) E0262 不是类名或结构名 Seer E:\ProgramData\Microsoft\VisualStudio\Project\Seer\Seer\simple_app.cpp 4
时间: 2023-10-19 09:07:02 浏览: 59
引用和引用[2]提供了两段代码,它们分别展示了vector容器中存储自定义类NoDefault对象的情况。这是一个模板类,其中引用中的NoDefault类未提供默认构造函数,而引用中的NoDefault类将默认构造函数删除了。
在C++中,如果你使用一个类作为容器元素的类型,那么该类必须满足一些要求。其中之一要求是该类必须具有默认构造函数。默认构造函数是一个没有参数的构造函数,如果没有定义任何构造函数,编译器会自动生成默认构造函数。然而,当类定义了其他构造函数时,编译器不会自动地生成默认构造函数。在这种情况下,如果你想在容器中使用该类的对象,你需要提供一个默认构造函数。
在引用中,NoDefault类没有默认构造函数,所以当你尝试将该类的对象存储在vector容器中时,编译器会发出错误,因为它无法实例化一个没有默认构造函数的类。而在引用中,NoDefault类将默认构造函数删除了,这也会导致类不能实例化,所以编译器会发出错误。
所以,要解决这个问题,你需要提供一个默认构造函数,或者不删除默认构造函数,以使你的类能够正确地实例化并放入vector容器。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)