2015-10-16 1 views
-1

Для целого мы можем сделать это какКак инициализировать параметризованный конструктор по умолчанию для строки?

class A{ 
    int a; 
public: 
    A(int x = 0){ a = x; } 
}; 
+0

_ «И я умираю в упор Манчестер Юнайтед» «Я этого никогда не понимал. Вы живете на другой стороне света. Вы когда-нибудь были в Манчестере? лол –

ответ

4

трудно понять, что именно вы просите. I думаю, вы спрашиваете, как указать значение по умолчанию для параметра std::string. Если это так, то вы можете сделать это следующим образом:

class A{ 
    string a; 
public: 
    A(string x = ""){ a = x; } 
}; 

или:

class A{ 
    string a; 
public: 
    A(const string &x = string()){ a = x; } 
}; 

Хотя, в любом случае, вы должны инициализировать a элемент, используя список инициализации члена конструктора а тело конструктора:

class A{ 
    string a; 
public: 
    A(string x = "") : a(x) { } 
}; 

class A{ 
    string a; 
public: 
    A(const string &x = string()) : a(x) { } 
};