Ich versuche, den Zugriff auf den Standardkonstruktor einer Klasse, die ich schreibe, zu blockieren. Der Konstruktor, den andere verwenden sollen, erfordert eine konstante Referenz auf ein anderes Objekt. Ich habe den Standardkonstruktor privat gemacht, um zu verhindern, dass andere ihn benutzen. Ich erhalte einen Compilerfehler für den Standardkonstruktor, weil die Konstantenreferenzelementvariable nicht richtig initialisiert wird. Was kann ich tun, um das kompilieren zu lassen?
%Vor%Der einfachste Weg, den Standardkonstruktor zu erstellen, den Sie nicht verwenden wollen (das ist der Fall mit Ihrem Konstruktor, ist das richtig?), definiert ihn einfach nicht, das heißt:
%Vor%In diesem Fall ist es möglicherweise etwas überflüssig, da der Compiler keinen Standardkonstruktor für eine Klasse mit einem Referenzelement erstellt, aber es ist besser, ihn dort einzufügen, falls Sie das Referenzelement löschen.
Tags und Links c++ reference constructor initialization