簡體   English   中英

C ++對象創建

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM