[英]C++ object creation
我怀疑用C ++创建对象。
假设我有一个名为Employee的类,其中包含一些数据成员和方法。
现在在主要功能中,有时我看到开发人员使用不同的方法来创建对象,例如
Employee emp1; // 1)
Employee emp2 = new Employee // 2)
我的疑问是何时应该使用案例1,何时应该使用选项2。
1)员工emp1;
这将在堆栈上创建一个默认的构造雇员。 它的生存期一直持续到超出范围为止。
2)员工emp2 =新员工
我什至没有编译过,我想你是说:
2)员工* emp2 =新员工
这将在堆中创建默认的构造员工,并将其地址分配给员工指针。 它的生命周期一直持续到delete
它的调用它。
它们是两个完全不同的东西。 在您了解更多信息之前,您可能希望坚持使用第一个版本。 一旦你了解了它,你应该坚持使用第一个版本,除非你知道并理解不这样做的原因。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.