<?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[struct von unbekannter bauart übergeben...]]></title><description><![CDATA[<p>Hallo,<br />
ich möchte gerne ein struct an eine Funktion übergeben. Allerdings ist wird erst zur Laufzeit festgelegt, welcher struct von zwei structen verschiedener Bauart übergeben werden soll. Kann ich das, einen struct an eine Funktion übergeben, ohne zu sagen wie dieser aussehen soll?<br />
mfG,<br />
MatthiasK</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/141812/struct-von-unbekannter-bauart-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 16:15:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/141812.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 25 Mar 2006 11:28:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to struct von unbekannter bauart übergeben... on Sat, 25 Mar 2006 11:28:29 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich möchte gerne ein struct an eine Funktion übergeben. Allerdings ist wird erst zur Laufzeit festgelegt, welcher struct von zwei structen verschiedener Bauart übergeben werden soll. Kann ich das, einen struct an eine Funktion übergeben, ohne zu sagen wie dieser aussehen soll?<br />
mfG,<br />
MatthiasK</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1023619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1023619</guid><dc:creator><![CDATA[MatthiasK]]></dc:creator><pubDate>Sat, 25 Mar 2006 11:28:29 GMT</pubDate></item><item><title><![CDATA[Reply to struct von unbekannter bauart übergeben... on Sat, 25 Mar 2006 11:57:45 GMT]]></title><description><![CDATA[<p>Mir würde spontan einfallen:<br />
1. Du leitest beide structs von einer Basisklasse ab und übergibst einen Zeiger auf diese Basisklasse<br />
2. Wenn es nur zwei structs sind, dann übergibst Du zwei Zeiger. Je nachdem welches struct Du übergibst ist das andere 0. Ist vielleicht etwas unschön. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Aber mal sehen, was die anderen sagen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1023635</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1023635</guid><dc:creator><![CDATA[mantiz]]></dc:creator><pubDate>Sat, 25 Mar 2006 11:57:45 GMT</pubDate></item><item><title><![CDATA[Reply to struct von unbekannter bauart übergeben... on Sat, 25 Mar 2006 12:00:46 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>nein, der Parameter-Typ muß fest sein.<br />
Aber du kannst einen Typ wählen, den du zur Laufzeit anpassen kannst.<br />
Als erstes könntest du die Funktion für beide struct-Typen überladen und in jeder einzelnen dann individuell das struct bearbeiten.<br />
Desweiteren kannst du einen void-Pointer auf das struct übergeben, denn du dann auf basis einem zusätzlichen Typ-Parameter wieder auf das ürsprüngliche struct casten kannst (ist aber die schlechteste Methode)<br />
Außerdem kannst du den beiden structs noch eine gemeinsame Basisklasse verpassen, die du dann anstatt der spezialisierten struct-Typen als Parameter verwendest. Wenn du dann gut mit virtuellen Funktionen arbeitest, must du in der Funktion gar nicht mehr wissen welcher Typ es nun wirklich ist.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1023638</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1023638</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 25 Mar 2006 12:00:46 GMT</pubDate></item><item><title><![CDATA[Reply to struct von unbekannter bauart übergeben... on Sat, 25 Mar 2006 12:01:27 GMT]]></title><description><![CDATA[<p>Mir ist als erstes ein Template eingefallen. Kommt aber darauf an, ob beide Structs die gleichen Member-Namenskonventionen haben. Aber vermutlich ist in dem Falle eine Ableitung am besten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1023640</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1023640</guid><dc:creator><![CDATA[picocat]]></dc:creator><pubDate>Sat, 25 Mar 2006 12:01:27 GMT</pubDate></item><item><title><![CDATA[Reply to struct von unbekannter bauart übergeben... on Sat, 25 Mar 2006 12:29:48 GMT]]></title><description><![CDATA[<p>akari schrieb:</p>
<blockquote>
<p>Aber du kannst einen Typ wählen, den du zur Laufzeit anpassen kannst.</p>
</blockquote>
<p>Aha, das klingt interessant, wie könnte so etwas denn aussehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1023659</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1023659</guid><dc:creator><![CDATA[MatthiasK]]></dc:creator><pubDate>Sat, 25 Mar 2006 12:29:48 GMT</pubDate></item><item><title><![CDATA[Reply to struct von unbekannter bauart übergeben... on Sat, 25 Mar 2006 12:56:40 GMT]]></title><description><![CDATA[<p>MatthiasK schrieb:</p>
<blockquote>
<p>akari schrieb:</p>
<blockquote>
<p>Aber du kannst einen Typ wählen, den du zur Laufzeit anpassen kannst.</p>
</blockquote>
<p>Aha, das klingt interessant, wie könnte so etwas denn aussehen?</p>
</blockquote>
<p>Damit habe ich nur eine meiner drei bereits genannten Möglichkeiten gemeint :<br />
- Überladen<br />
- void- Casten<br />
- virtuelle Basisklasse</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1023679</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1023679</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 25 Mar 2006 12:56:40 GMT</pubDate></item></channel></rss>