B
fubar schrieb:
Hmm, wie wäre es mit
class T
{
private:
int i_;
public:
T(int i=0)
: i_(i) { }
};
In dem Fall funktioniert es, in meinem Fall ...
[...]
ProjectTemplate(const AnsiString &name,
const AnsiString &stdFile, const AnsiString &wizard,
TIcon *icon, const DWORD &flags, bool isHidden,
const AnsiString &author, const AnsiString &description,
bool UseStdFile, const TStringList * helpFiles,
const HostList * hostList)
: name_(name.c_str()), stdFile_(stdFile.c_str()), wizard_(wizard.c_str()),
flags_(flags), isHidden_(isHidden), author_(author.c_str()),
description_(description.c_str()), useStdFile_(useStdFile),
helpFiles_(helpFiles), hostList_(hostList)
{
// Es geht um folgende Anweisungen, damit ich sie nicht in anderen
// Konstruktoren neuschreiben muss.
if (! helpFiles_)
helpFiles_ = new TStringList;
if (! hostList_)
hostList_ = new HostList;
}
ProjectTemplate(const AnsiString &name)
{
ProjectTemplate(name, "", "", NULL, 0, false, "<unknown>", "", true, NULL, NULL);
[...]
... wäre es etwas Problematisch ;). Aber ich schreibe einfach eine Funktion die das ganze implementiert und die ich dann von den Konstruktoren aufrufen werde.