首页 >后端开发 >C++ >为什么我的 C 构造函数没有被调用?

为什么我的 C 构造函数没有被调用?

DDD
DDD原创
2024-12-27 16:25:10245浏览

Why Doesn't My C   Constructor Get Called?

为什么构造函数仍未被调用?

在提供的 C 代码中,定义了一个名为 Class 的类,其默认构造函数和析构函数打印分别在对象创建和销毁期间的消息。但是,当尝试创建此类的实例时,主函数中不会出现构造函数调用。相反,无意中声明了一个函数声明。

要解决此问题并确保正确调用默认构造函数,请使用 Class object(); 行main函数中应该修改为Class对象;。此更改正确声明了 Class 类型的对象并触发其默认构造函数的执行。

此外,该问题演示了 C 中被称为“最令人烦恼的解析”的潜在陷阱。在这种情况下,解析器错误地解释了声明 Class object();作为函数声明而不是对象声明。为了防止这种情况,应该消除对象声明后出现的分号。

以上是为什么我的 C 构造函数没有被调用?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn