gpt4 book ai didi

c++ - 错误 C2440 : 'initializing' : cannot convert from 'classname *' to 'classname'

转载 作者:太空宇宙 更新时间:2023-11-04 14:34:12 25 4
gpt4 key购买 nike

我定义了一个名为 extBlock 的类。

然后我用这个创建那个类的实例

extBlock mainBlock = new extBlock(1, 1024);

我得到这个错误: 错误 C2440:“正在初始化”:无法从“extBlock *”转换为“extBlock”

任何人都可以帮助我解决为什么会出现此错误。

我在网上看到过用指针这样声明的例子

extBlock *mainBlock = new extBlock(1, 1024);

但如果我这样做,它不会让我调用 mainBlock 的函数

最佳答案

阅读您的 C++ 语法:

extBlock mainBlock(1, 1024); // create a class instance (object) on the stack
mainBlock.memberFunction(); // call a member function of a stack object

extBlock * ptrBlock = new extBlock(1, 1024); // create an object on the heap
ptrBlock->memberFunctions(); // member access through pointers has different syntax
delete ptrBlock; // must deallocate memory when you're done with a heap object

关于c++ - 错误 C2440 : 'initializing' : cannot convert from 'classname *' to 'classname' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2654556/

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