gpt4 book ai didi

c++ - 纯虚方法返回一个对象?

转载 作者:行者123 更新时间:2023-11-28 03:19:59 24 4
gpt4 key购买 nike

我正在尝试做这个纯虚方法:

   virtual MonLaser& getLaser() = 0;

但是我遇到了各种各样的错误:

Error 6 error C2143: syntax error : missing ';' before '&'
Error 5 error C2253: 'MonMartien::getLaser' :
pure specifier or abstract override specifier only allowed on virtual function
Error 13 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

Error 7 error C2433: 'MonMartien::MonLaser' : 'virtual' not permitted on data declarations

我需要执行纯虚方法,否则我无法访问我的Laser。你有什么想法吗?

最佳答案

学习后,该方法从 MonMartien 类中返回自定义类型,我现在有了不同的理论。

你看,这个错误消息表明,编译时类型是未知的。确保在声明 MonMartien 之前声明了 MonLaser。如果您在同一个标​​头中有两者,请确保将 MonLaser 的声明放在 MonMartien 的声明之上。如果它在单独的文件中,请务必包含头文件。

此外,请确保声明不在类内,因为这样类型将不可见,因此类外的任何人都无法访问。

从本质上讲,这一切都归结为:MonLaser 在哪里定义?

关于c++ - 纯虚方法返回一个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15731820/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com