Arrayauslesung
-
würde auch variante 1 bervorzugen und static_cast nehmen.
außerdem ist in variante 2 ne ] zu viel.
-
OK. Ich schreibe einen heterogenen Container. Der Container an und für sich merkt sich die Typen nicht. Deshalb
void*. Jedoch biete ich ein Hilfskonzept an. Wenn zum Beispiel einintgepusht wird, wird ein Handler zurückgegeben. Dieser Handler kennt den Typ und kann mit der entsprechenden Variable alles tun was er will. Wenn man diese Variable wieder entfernen will, kann man entwerder im Container die Bytes x - y löschen oder man sagt dem Handler einfach, er soll das tun. Und nun, wenn der Handler denintausgeben soll, dann Caste ich einen bestimmten Teil des Arrays der Containers.MfG, EOutOfResources
-
Du wirst da Deine Gründe haben, dennoch: Und wozu dieser Container?
-
hustbaer schrieb:
@314159265358979:
Ich glaube nicht dass du mit der Erfahrung die du (kaum) hast qualifiziert bist Aussagen darüber zu treffen welche Form von Type-Erasure schlau oder dumm ist.Das glaube ich schon

hustbaer schrieb:
Mal ganz davon abgesehen dass wir alle (noch) nicht wissen was EOutOfResources wirklich vor hat.
Da hast du Recht, war wohl etwas zu voreilig.
-
EOutOfResources schrieb:
OK. Ich schreibe einen heterogenen Container. Der Container an und für sich merkt sich die Typen nicht. Deshalb
void*. Jedoch biete ich ein Hilfskonzept an. Wenn zum Beispiel einintgepusht wird, wird ein Handler zurückgegeben. Dieser Handler kennt den Typ und kann mit der entsprechenden Variable alles tun was er will. Wenn man diese Variable wieder entfernen will, kann man entwerder im Container die Bytes x - y löschen oder man sagt dem Handler einfach, er soll das tun. Und nun, wenn der Handler denintausgeben soll, dann Caste ich einen bestimmten Teil des Arrays der Containers.Und was ist daran jetzt besser, als wenn Du virtuelle Funktionen nehmen würdest?
Außerdem hast Du bei der Beschreibung noch um den heißen Brei geredet. Ist das ein Betriebsgeheimnis? Dann müßte ich hier abbrechen, weil mir die Zeit zu schade ist, Hilfeversuche durch Geheimniskrämerei torpedieren zu lassen. Dafür müßte Geld fließen.
-
volkard schrieb:
Und was ist daran jetzt besser, als wenn Du virtuelle Funktionen nehmen würdest?
Genau wegen Antworten wie diesen will ich nicht sagen, worum es geht. Ich habe beschlossen wie ich es mache. Wenn ich dazu Hilfe brauchen würde, würde ich es sagen.
-
314159265358979 schrieb:
hustbaer schrieb:
@314159265358979:
Ich glaube nicht dass du mit der Erfahrung die du (kaum) hast qualifiziert bist Aussagen darüber zu treffen welche Form von Type-Erasure schlau oder dumm ist.Das glaube ich schon

Das zeigt nur wie sehr du dich überschätzt.

Wie viele Zeilen produktiv eingesetzten Code hast du schon geschrieben?
Wie viele Programme > 10 KLOC von dir hast du > 6 Monate nach fertigstellung schon gewartet?Und nochwas: das geht auch alles etwas freundlicher. Vonwegen "die dümmste Art" und so.
-
EOutOfResources schrieb:
volkard schrieb:
Und was ist daran jetzt besser, als wenn Du virtuelle Funktionen nehmen würdest?
Genau wegen Antworten wie diesen will ich nicht sagen, worum es geht. Ich habe beschlossen wie ich es mache. Wenn ich dazu Hilfe brauchen würde, würde ich es sagen.
Hihi.
Statistisch gesehen bedeutet das du bist dir im Klaren darüber dass was du vor hast Unsinn ist, willst es aber aus einem bestimmten Grund trotzdem machen.
-
EOutOfResources schrieb:
OK. Ich schreibe einen heterogenen Container. ...
Da dürfte die Frage, wie du die Rohdaten anzusprechen hast, wohl dein kleinstes Problem sein (so etwas ist eine Stilfrage und hat im fertigen Programm keine Auswirkungen). Das geht los mit dem korrekten Alignment der im Container verpackten Objekte und endet bei der Frage, wer nun dafür zuständig ist, die Destruktoren dieser Objekte aufzurufen.
@XPille: Ich hab' nicht angefangen mit den reinterpret_cast's
-
CStoll schrieb:
@XPille: Ich hab' nicht angefangen mit den reinterpret_cast's
Hab ich auch nie behauptet...