Ist hier UB zu erkennen?
-
You are welcome.
-
Sone schrieb:
virtual ~Task() = 0 {};Ok, das kann nur Pseudo-Code sein...

Wieso das?
-
Tachyon schrieb:
Sone schrieb:
virtual ~Task() = 0 {};Ok, das kann nur Pseudo-Code sein...

Wieso das?
Weil das kein gültiges Standard-C++ ist. Oder es ist eine Implementations-Erweiterung von VC++...
§10.4/2 schrieb:
A function declaration cannot provide both a pure-specifier and a definition
-
Tachyon schrieb:
Sone schrieb:
virtual ~Task() = 0 {};Ok, das kann nur Pseudo-Code sein...

Wieso das?
Man kann pure virtual functions nur außerhalb der Klassendefinition definieren.
-
Nathan schrieb:
Man kann pure virtual functions nur außerhalb der Klassendefinition definieren.
Das weiß er doch - würde mich schwer wundern wenn nicht.
-
Sone schrieb:
Nathan schrieb:
Man kann pure virtual functions nur außerhalb der Klassendefinition definieren.
Das weiß er doch - würde mich schwer wundern wenn nicht.
Tachyon fragte, wieso das nur Pseudocode sein kann, ich gab einen Grund.
Wieso meinst du, dass er das dann schon weiß, wenn er doch fragt?
Du hast ihm doch auch geantwortet.
-
Was den Körper von Destruktoren von abstrakten Klassen angeht: Ist erlaubt. Hier ( http://stackoverflow.com/questions/1219607/why-do-we-need-a-pure-virtual-destructor-in-c ) wird sogar behauptet, dass pur virtuelle Destruktoren eine Implementierung benötigen, aber ich hab keinen Standard auf der Festplatte und bei Google finde ich keine Quellen.
-
Nathan schrieb:
Sone schrieb:
Nathan schrieb:
Man kann pure virtual functions nur außerhalb der Klassendefinition definieren.
Das weiß er doch - würde mich schwer wundern wenn nicht.
Tachyon fragte, wieso das nur Pseudocode sein kann, ich gab einen Grund.
Wieso meinst du, dass er das dann schon weiß, wenn er doch fragt?
Du hast ihm doch auch geantwortet.Stimmt, tut mir Leid. Tachyon sollte das aber wissen, der Kerl ist schon viel länger dabei als ich oder du.
Was den Körper von Destruktoren von abstrakten Klassen angeht: Ist erlaubt.
Klar, aber nicht bei der Deklaration. Dass sie definiert werden müssen ist klar.
-
Sone schrieb:
Nathan schrieb:
Sone schrieb:
Nathan schrieb:
Man kann pure virtual functions nur außerhalb der Klassendefinition definieren.
Das weiß er doch - würde mich schwer wundern wenn nicht.
Tachyon fragte, wieso das nur Pseudocode sein kann, ich gab einen Grund.
Wieso meinst du, dass er das dann schon weiß, wenn er doch fragt?
Du hast ihm doch auch geantwortet.Stimmt, tut mir Leid. Tachyon sollte das aber wissen, der Kerl ist schon viel länger dabei als ich oder du.
Was den Körper von Destruktoren von abstrakten Klassen angeht: Ist erlaubt.
Klar, aber nicht bei der Deklaration. Dass sie definiert werden müssen ist klar.
Achso, dann hab ich falsch verstanden worum es geht, sorry

-
Sone schrieb:
[[...]Tachyon sollte das aber wissen, der Kerl ist schon viel länger dabei als ich oder du.[...]
Ach ja, da war was. Ich habe schlicht die Definition überlesen...