Kann ich den Parameter const-Verweis innerhalb des Methodenaufrufs erstellen? Ich weiß, es kompiliert, aber bin mir nicht ganz sicher, dass es zur Laufzeit korrekt ist.Objekte beim Übergeben als Const-Referenz erstellen C++
Ich habe die folgenden Klassen:
class A{
public:
void doThings(const B& b);
}
class B{
B(int i, int j);
}
int main{
A a;
a.doThings(B(1,2)); //Is this OK?
}
Was erwarten Sie falsch? –
Ihr Code wird definitiv nicht kompiliert. –
Ja, Sie können einen Const-Verweis auf ein temporäres Objekt in einer Methode/Funktion verwenden, aber Sie können keinen Zeiger darauf speichern oder in einem anderen Thread verwenden, und der Compiler schützt Sie nicht davor. – gabry