V
Xebov schrieb:
Naja was mir da nur als Idee einfällt wäre eine echte Singleton draus zu machen. Also eine einzige statische Instanz die einfach immer von deiner Funktion mit neuen Daten gefüttert und "Umgebaut" wird, wenn du da über friends arbeitest und die wichtigen Sachen versteckst wäre es für das Programm egal ob es Kopien davon gibt die durchs Programm geistern. Das ginge natürlich nur wenn du nur eine Kopie zur selben Zeit brauchst.
Ja, genau daran würde es leider scheitern
Tippgeber schrieb:
Nein, das kann es auch nicht, da du voraussetzt, dass ein Compiler eine optionale Optimierung durchführt und die Syntax nicht vor Anwendung der Optimierung auf Gültigkeit prüft.
Nein, das setze ich nicht voraus. Selbst wenn er nicht optimiert und den CC braucht, er darf doch? Innerhalb von "make" ist der CC ja verfügbar. Außerhalb von "make" hat der Compiler doch nur die temporäre per const ref zu übergeben.
Ich verstehe also nicht, warum er hier meckert. Wie gesagt, die neueren GCC schlucken es ja auch!
Tippgeber schrieb:
"ComeauTest.c", line 16: error: "foo::foo(const foo &)" (declared at line 5),
required for copy that was eliminated, is inaccessible
fooFunc(foo::make());
^