mit Was die Notwendigkeit eines separaten Get- und Set-Funktion ist, wenn es möglich ist, sie zu kombinieren, wie folgt aus:Einstellen private Variablen einen Getter
class A {
private:
int var = 0;
public:
int& getset(){ return var; };
};
int main()
{
A a = A();
a.getset() = 4;
std::cout << "Hello, " << a.getset() << "!\n";
}
Ich gehe davon etwas gibt, das ich übersehen habe, aber im Falle das ist keine gute Idee; Warum ist es möglich, auf diese Weise auf private Mitglieder zuzugreifen?
getset ?? Bitte benutzen Sie einen anderen Namen dafür .... –
Ihr Getset bricht die Kapselung und gibt Ihnen Zugriff auf die private Member-Variable *** var *** –
Weil es nicht offensichtlich ist (IMHO) und weil, wenn Sie etwas in der tun müssen Setzer kannst du nicht. Außerdem würde ich an dieser Stelle "var" öffentlich machen und damit fertig sein. –