簡體   English   中英

如何動態地在參數化構造函數中?

[英]How dynamically in the parameterized constructor?

我在參數化構造函數中動態分配了該對象“ name_of_pro”。 我正在嘗試,但我認為不是真的

---------------------------------------...

class employee{ 
string name, ID, *name_of_pro; 
int age ; 
float salary ; 
public: 
employee(){}; 

employee ( string n,int ag, float sa , string name_pro){ // constructor. parameterized 
name=n; 
age=ag; 
salary=sa; 
name_of_pro=new string; 
} 

希望對您有所幫助。

我不確定是否能理解您的問題,但是我想您可能想說的是要讓name_of_pro成為name_pro的副本。

employee ( string n, int ag, float sa , string name_pro){ 
    name=n; 
    age=ag; 
    salary=sa; 
    name_of_pro=new string(name_pro);  // You can make a pointer to a copy this way
} 

如果您要執行此操作,則只需確保刪除析構函數中的字符串name_of_pro

~employee() {
    delete name_of_pro;
}

甚至更容易的是初始化列表,而不是所有簡單的分配。

employee ( string name, int age, float salary , string name_pro) : 
        name(name), age(age), salary(salary), name_of_pro(new string(name_pro)) { 
}

讓我知道這是否不能回答您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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