int* nach void*



  • Dravere schrieb:

    Allerdings ist mir sowas in den x Jahren noch nicht begegnet in C++.

    Ich hatte einmal eine Speicherverwaltungsklasse geschrieben, die Adressen speichern sollte. Anfangs hab ich das noch voll im C-Style gemacht, also Zeiger auf dynamisch allokiertes void* -Array. Später hab ich dann die STL mit eigenem Allocator verwendet, was vieles vereinfacht und den void** unnötig gemacht hat. 😉



  • muss_klausur_bestehen schrieb:

    ...Ich glaube es ist einfach von der Natur aus so, dass Frauen Dinge mehr hinterfragen, weshalb ich mich ein wenig mehr mit dem Thema void* beschäftige....

    Stimmt ja - wir Männer haben uns noch nie Gedanken über void* gemacht! 🤡

    Wer ist eigentlich dieser Herr "Natur"? Und warum hat er aus Frauen die besseren void*-Versteher gemacht? ... alles Fragen, die ich als Mann natürlich gar nicht stellen darf... 😃

    Gruß,

    Simon2.



  • Dravere schrieb:

    hustbaer schrieb:

    Ich glaube mich zu erinnern dass der Standard nicht "erlaubt" Funktionszeiger zu Datenzeigern (inklusive void*) zu casten (bzw. es nicht garantiert, kann sein dass "implementation defined" dasteht oder sowas). Was *sehr* schade ist, da man so einige Lowlevel-Dinge nicht portabel programmieren kann.

    Ich weiss nur, dass es mit dem MSVC funktioniert und habe auch nie gegenteiliges gelernt. Nur bei Zeiger zu Membern weiss ich, dass man sie nicht einem void* zuweisen darf. Dort hat es allerdings irgendeinen Grund wegen Typsicherheit.
    Aber keine Ahnung, ich weiss es schlicht und einfach nicht und brauche solche Konvertierungen auch nicht 😉

    Grüssli

    Ich weiss auch dass es geht, und zwar mit allen Compilern die ich kenne. Was Member-Pointer angeht, die kann man IIRC garnicht verlässlich casten, nichtmal zu anderen Member-Pointern. Bzw. nur sehr eingeschränkt.



  • mammamia;



  • mammamia;


Anmelden zum Antworten