为什么构造函数仍未被调用?
在提供的 C 代码中,定义了一个名为 Class 的类,其默认构造函数和析构函数打印分别在对象创建和销毁期间的消息。但是,当尝试创建此类的实例时,主函数中不会出现构造函数调用。相反,无意中声明了一个函数声明。
要解决此问题并确保正确调用默认构造函数,请使用 Class object(); 行main函数中应该修改为Class对象;。此更改正确声明了 Class 类型的对象并触发其默认构造函数的执行。
此外,该问题演示了 C 中被称为“最令人烦恼的解析”的潜在陷阱。在这种情况下,解析器错误地解释了声明 Class object();作为函数声明而不是对象声明。为了防止这种情况,应该消除对象声明后出现的分号。
以上是为什么我的 C 构造函数没有被调用?的详细内容。更多信息请关注PHP中文网其他相关文章!