Ich habe eine Klasse: class1 mit einer privaten Mitgliedsvariablen:
Ich versuche, Objekte der Klasse2 in die obige s_list einzufügen oder zuzuweisen.
Die Klasse2 hat einen Kopierkonstruktor der Form:
Code: Select all
class2::class2(const class2& obj)
{
x = obj.x;
y = obj.y;
}
Es gibt auch einen anderen Konstruktor:
Code: Select all
class2::class2(std::string x1, double y1)
{
x = x1;
y = y1;
}
Innerhalb einer der Funktionen von Klasse1 habe ich die folgenden Zeilen:
Code: Select all
class2 s_obj(x1, y1);
s_list[x1] = s_obj;
Es wird jedoch der Fehler ausgegeben:
Code: Select all
error: no matching function for call to ‘class2::class2()’
second(std::forward(std::get(__tuple2))...)
^
Was übersehe ich hier?