<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Speicherbelegung von structs&#x2F;klassen festlegen]]></title><description><![CDATA[<p>Hallo,</p>
<p>kann man in c++ die Speicherbelegung von structs bzw klassen festlegen, also, dass bestimmte Variablen im Speicher weiter vorne liegen?<br />
Hintergrund ist, dass ich überlegt habe, dass man per</p>
<pre><code>mystruct stc;
char* = (char*)&amp;stc;
</code></pre>
<p>Den Speicherbereich einer struct (oder eines class pointers ?) abgreifen kann und man so ziemlich einfach an die Daten für eine Serialisierung kommen kann (wenn man die Länge kennt)</p>
<p>Nun besteht das Objekt ja auch aus Daten, die man nicht speichern kann oder braucht, deshalb die Frage ob man die notwendigen Bytes also an den Anfang des Speicherbereichs setzen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/318912/speicherbelegung-von-structs-klassen-festlegen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Jul 2026 09:52:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/318912.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 31 Jul 2013 00:22:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Speicherbelegung von structs&#x2F;klassen festlegen on Wed, 31 Jul 2013 00:22:32 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>kann man in c++ die Speicherbelegung von structs bzw klassen festlegen, also, dass bestimmte Variablen im Speicher weiter vorne liegen?<br />
Hintergrund ist, dass ich überlegt habe, dass man per</p>
<pre><code>mystruct stc;
char* = (char*)&amp;stc;
</code></pre>
<p>Den Speicherbereich einer struct (oder eines class pointers ?) abgreifen kann und man so ziemlich einfach an die Daten für eine Serialisierung kommen kann (wenn man die Länge kennt)</p>
<p>Nun besteht das Objekt ja auch aus Daten, die man nicht speichern kann oder braucht, deshalb die Frage ob man die notwendigen Bytes also an den Anfang des Speicherbereichs setzen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2342432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2342432</guid><dc:creator><![CDATA[Pria]]></dc:creator><pubDate>Wed, 31 Jul 2013 00:22:32 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherbelegung von structs&#x2F;klassen festlegen on Wed, 31 Jul 2013 00:53:12 GMT]]></title><description><![CDATA[<p>1. Die Member liegen genau in der Reihenfolge im Speicher, wie sie in der struct/class deklariert sind (nur Padding bleibt offen).<br />
2. Das Offset bekommst du mit offsetof aus cstddef.<br />
3. Die Addresse eines Objekts bekommt man mit <code>&amp;reinterpret_cast&lt;char&amp;&gt;(str)</code> oder <code>std::addressof</code> .<br />
4. Das ist so ziemlich die schlechteste Herangehensweise ans Serialisieren<br />
5. Niemand wird je seine Klassen nach &quot;Serialisierbarkeit&quot; aufbauen (zumal es zu Performanceeinbussen führen kann, wenn die Datenmember nicht klug angeordnet sind).<br />
6. Speicherserialisierung, srsly?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2342434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2342434</guid><dc:creator><![CDATA[qa]]></dc:creator><pubDate>Wed, 31 Jul 2013 00:53:12 GMT</pubDate></item></channel></rss>