<?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[Templates: Zur Laufzeit entscheiden?]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine Frage. Habe ich in irgendeiner Art und Weise die Möglichkeit abhängig vom eingelesenen Datentyp ein z.B. template-basiertes Array zur Laufzeit zu befüllen?</p>
<p>Genauer: Ich lese z.B. nur reelle Werte ein oder komplexe. Also entweder besteht jede Zahl nur aus einer (reellen) Zahl oder aus zwei Zahlen. Bsp:<br />
(4.5) oder eben (4.5 8.9).<br />
Diese stehen z.B. in einer Datei die ich einlese. Das Programm kann auslesen welche Art das ist, also ob reell oder komplex.<br />
Jetzt möchte ich ein template-basiertes array füllen.<br />
Mir fällt nichts anderes ein als:</p>
<pre><code class="language-cpp">switch(type)
{
    case real:
        fülle_array_real();
    case komplex:
        fülle_array_komplex();
}
</code></pre>
<p>Gäbe es eine Möglichkeit beides zu vereinen um code nicht doppelt zu halten mit evtl. einer template-methode fülle_array(type)?</p>
<p>Ich habe mal von irgendjemandem gehört es gäbe eine Möglichkeit dies zur Laufzeit zu entscheiden - mir geistert das im Kopf rum - deswegen die frage.</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/236303/templates-zur-laufzeit-entscheiden</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 00:57:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/236303.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 13 Mar 2009 09:48:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 09:48:24 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine Frage. Habe ich in irgendeiner Art und Weise die Möglichkeit abhängig vom eingelesenen Datentyp ein z.B. template-basiertes Array zur Laufzeit zu befüllen?</p>
<p>Genauer: Ich lese z.B. nur reelle Werte ein oder komplexe. Also entweder besteht jede Zahl nur aus einer (reellen) Zahl oder aus zwei Zahlen. Bsp:<br />
(4.5) oder eben (4.5 8.9).<br />
Diese stehen z.B. in einer Datei die ich einlese. Das Programm kann auslesen welche Art das ist, also ob reell oder komplex.<br />
Jetzt möchte ich ein template-basiertes array füllen.<br />
Mir fällt nichts anderes ein als:</p>
<pre><code class="language-cpp">switch(type)
{
    case real:
        fülle_array_real();
    case komplex:
        fülle_array_komplex();
}
</code></pre>
<p>Gäbe es eine Möglichkeit beides zu vereinen um code nicht doppelt zu halten mit evtl. einer template-methode fülle_array(type)?</p>
<p>Ich habe mal von irgendjemandem gehört es gäbe eine Möglichkeit dies zur Laufzeit zu entscheiden - mir geistert das im Kopf rum - deswegen die frage.</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679176</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679176</guid><dc:creator><![CDATA[Gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:48:24 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 10:12:55 GMT]]></title><description><![CDATA[<p>Ich würde bei komplexen Zahlen bleiben, und entsprechend den Realteil zuweisen, wenn es sich um rein reelle Daten handelt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679189</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 10:12:55 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 10:34:10 GMT]]></title><description><![CDATA[<p>irgendwie so <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /></p>
<pre><code class="language-cpp">enum mytype{COMPLEX,REAL};

template&lt;mytype T&gt;
void fillarray();

template&lt;&gt;
void fillarray&lt;COMPLEX&gt;()
{
    // impl
}

template&lt;&gt;
void fillarray&lt;REAL&gt;()
{
    //impl
}

const mytype type=REAL;
fillarry&lt;type&gt;();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1679200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679200</guid><dc:creator><![CDATA[kitov]]></dc:creator><pubDate>Fri, 13 Mar 2009 10:34:10 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 10:32:10 GMT]]></title><description><![CDATA[<p>eh du meinst den imaginärteil auf Null setzen sozusagen?<br />
Da ich Performanceeffizient sein will und netzkommunikation habe sollte die datenstruktur auch im rellen fall nicht unnötig overhead erzeugen. Von daher muss ich im reellen wirklich nur reelle werte haben...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679201</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679201</guid><dc:creator><![CDATA[Gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 10:32:10 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 10:52:13 GMT]]></title><description><![CDATA[<p>Gambo schrieb:</p>
<blockquote>
<p>eh du meinst den imaginärteil auf Null setzen sozusagen?<br />
Da ich Performanceeffizient sein will und netzkommunikation habe sollte die datenstruktur auch im rellen fall nicht unnötig overhead erzeugen. Von daher muss ich im reellen wirklich nur reelle werte haben...</p>
</blockquote>
<p>Was soll das System im Gesamten denn leisten? Was passiert mit den Daten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679210</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679210</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 10:52:13 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 11:36:10 GMT]]></title><description><![CDATA[<p>im Prinzip wäre es jetzt overkill das zu beschreiben - im grunde ist meine frage aber völlig entkoppelt vom rest. Ich muss nur schauen dass ich eben entweder ein array aus nur reellen werten oder aber ein array aus komplexen habe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679237</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679237</guid><dc:creator><![CDATA[Gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 11:36:10 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 11:42:52 GMT]]></title><description><![CDATA[<p>Gambo schrieb:</p>
<blockquote>
<p>im Prinzip wäre es jetzt overkill das zu beschreiben - im grunde ist meine frage aber völlig entkoppelt vom rest. Ich muss nur schauen dass ich eben entweder ein array aus nur reellen werten oder aber ein array aus komplexen habe.</p>
</blockquote>
<p>Okay, wenn Du das so siehst...<br />
Meiner Meinung nach ändert die Betrachtung Komplex oder nicht Komplex zwar auch alles nachfolgende, sofern es nicht selbst alles Templatebesiert ist, aber nun gut.<br />
Wenn der Typ erst beim Laden erkannt werden kann, muss Du schon eine Fallunterscheidung einbauen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679243</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 11:42:52 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 12:01:39 GMT]]></title><description><![CDATA[<p>ich will hier einen parallelen code schreiben der über OpenMP/MPI zwischen den prozessen kommunikation entstehen lässt. Kommunikation ist teuer und es geht um performance.</p>
<p>Ich habe dich so verstanden:<br />
Wenn ich jetzt ein reelles problem vor mir habe und ein array komplex befüllen will sodaß der imaginärteil null ist hab ich zusätzliche information die unnötig ist. Außerdem verlagere ich die if-abfrage so nur an eine andere stelle - nämlich innerhalb der befüllung.</p>
<p>Habe ich dich missverstanden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679262</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679262</guid><dc:creator><![CDATA[gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 12:01:39 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 12:13:50 GMT]]></title><description><![CDATA[<p>gambo schrieb:</p>
<blockquote>
<p>Habe ich dich missverstanden?</p>
</blockquote>
<p>Keine Ahnung, ich sehe nur, was Du machen willst und keinen Bezug auf meine Aussagen.</p>
<p>Mit den eingelesenen Daten muss ja irgendwas geschehen. Vermutlich soll irgendwas berechnet werden. Die Datenbasis kann dabei rein reell oder komplex sein. Da dies gegeben ist, müssen auch die nachfolgenden Algorithmen zur Berechnung entweder als Template ausgelegt sein, oder jeweils einmal für reelle und einmal für komplexe Berechnungen ausgelegt sein.<br />
Handelt es sich nicht um templatisierte Algorithmen könntest Du deine Funktionen einmal für reelle und einmal für komplexe Werte überladen. Dafür hast Du dann aber Codeverdoppelung.<br />
Wenn Du schon beim einlesen unterscheiden willst, ob die Datenbasis reell oder komplex ist, kommst Du nicht um eine Fallunterscheidung herum.<br />
Würdest Du alles mit komplexen Zahlen lösen, wäre das ganze kein Problem.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679270</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679270</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 12:13:50 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 13:00:01 GMT]]></title><description><![CDATA[<p>achso jetzt verstehe ich deine frage. Ja - die nachfolgenden algorithmen sind templatebasiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679309</guid><dc:creator><![CDATA[gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 13:00:01 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 13:42:28 GMT]]></title><description><![CDATA[<p>gambo schrieb:</p>
<blockquote>
<p>achso jetzt verstehe ich deine frage. Ja - die nachfolgenden algorithmen sind templatebasiert.</p>
</blockquote>
<p>Okay.<br />
Ich denke aber trotzdem, dass Du um eine Abfrage nicht herum kommst. Du musst ja ersteinmal eine Datei auf ihren Inhalt untersuchen, um konkret zu wissen, was eingelesen werden soll. In Abhängigkeit davon musst Du Speicher zum Einlesen bereitstellen, und zwar entweder zum Einlesen reeller oder komplexer Werte. Dies ist nur zur Laufzeit aufgrund des Dateiinhaltes zu unterscheiden.<br />
Ich sehe das aber eigentlich nicht als allzu problematisch an, da man diese Unterscheidung in eine Klasse wegkapseln kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679339</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679339</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 13:42:28 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 14:04:08 GMT]]></title><description><![CDATA[<p>Ok - ja ich sehe das auch wie Du - danke hier schonmal. Ich habe nur mal von jemanden was gehört dass es auch zur Laufzeit ginge und diese person kennt sich wirklich aus. Ich hatte es damals nicht verstanden und der Kontakt ist leider abgebrochen.</p>
<blockquote>
<p>Ich sehe das aber eigentlich nicht als allzu problematisch an, da man diese Unterscheidung in eine Klasse wegkapseln kann.</p>
</blockquote>
<p>Könntest Du vielleicht zeigen wie du das meinst mit der wegkapselung - würd mich interessieren. Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679353</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679353</guid><dc:creator><![CDATA[gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 14:04:08 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 14:14:11 GMT]]></title><description><![CDATA[<p>gambo schrieb:</p>
<blockquote>
<p>Ok - ja ich sehe das auch wie Du - danke hier schonmal. Ich habe nur mal von jemanden was gehört dass es auch zur Laufzeit ginge und diese person kennt sich wirklich aus. Ich hatte es damals nicht verstanden und der Kontakt ist leider abgebrochen.</p>
</blockquote>
<p>Klar, nennt sich Polymorphie, wundert mich, dass du das nicht kennst, das lernst man meist vor den Templates kennen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679360</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679360</guid><dc:creator><![CDATA[Tippgeber]]></dc:creator><pubDate>Fri, 13 Mar 2009 14:14:11 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 14:34:09 GMT]]></title><description><![CDATA[<p>Tippgeber schrieb:</p>
<blockquote>
<p>Klar, nennt sich Polymorphie, wundert mich, dass du das nicht kennst, das lernst man meist vor den Templates kennen.</p>
</blockquote>
<p>Polymorphie macht hier aber keinen Sinn, da Du verschiedene Klassen hast, und immer noch unterscheiden musst, für welchen Zahlentyp Du einlesen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679372</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 14:34:09 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 14:54:42 GMT]]></title><description><![CDATA[<p>außerdem ist polymorphie von der performance zu langsam - zumindest hab ich das so bisher verstanden. Und mir geht es um performance.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679392</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679392</guid><dc:creator><![CDATA[gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 14:54:42 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:09:59 GMT]]></title><description><![CDATA[<p>gambo schrieb:</p>
<blockquote>
<p>außerdem ist polymorphie von der performance zu langsam - zumindest hab ich das so bisher verstanden. Und mir geht es um performance.</p>
</blockquote>
<p>google das mal: &quot;premature optimization&quot;</p>
<p>und was programmierst du denn, dass es dir auf nen paar Zehntel Prozent ankommt - nicht mal...</p>
<p>sag halt, was du willst - wenn du max. performance haben möchtest, nimm halt asm... xD</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679409</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:09:59 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:11:11 GMT]]></title><description><![CDATA[<p>Tachyon schrieb:</p>
<blockquote>
<p>Tippgeber schrieb:</p>
<blockquote>
<p>Klar, nennt sich Polymorphie, wundert mich, dass du das nicht kennst, das lernst man meist vor den Templates kennen.</p>
</blockquote>
<p>Polymorphie macht hier aber keinen Sinn, da Du verschiedene Klassen hast, und immer noch unterscheiden musst, für welchen Zahlentyp Du einlesen willst.</p>
</blockquote>
<p>Wieso nicht? Dafür gibt es Factories.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679410</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679410</guid><dc:creator><![CDATA[Tippgeber]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:11:11 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:18:00 GMT]]></title><description><![CDATA[<p>hui jetzt mal langsam leudde <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>was genau ist asm und was sind Factories..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679424</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679424</guid><dc:creator><![CDATA[gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:18:00 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:18:47 GMT]]></title><description><![CDATA[<p>ach inline-assembler... naja - muss net sein</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679426</guid><dc:creator><![CDATA[Gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:18:47 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:21:30 GMT]]></title><description><![CDATA[<p>gambo schrieb:</p>
<blockquote>
<p>hui jetzt mal langsam leudde <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>was genau ist asm und was sind Factories..</p>
</blockquote>
<p><a href="http://en.wikipedia.org/wiki/Factory_method_pattern" rel="nofollow">Factory Pattern</a>, das soll jetzt aber nicht heißen, dass du das benutzen musst/sollst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679431</guid><dc:creator><![CDATA[Tippgeber]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:21:30 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:23:15 GMT]]></title><description><![CDATA[<p>unskilled schrieb:</p>
<blockquote>
<p>google das mal: &quot;premature optimization&quot;</p>
</blockquote>
<p>Will nur kurz anmerken dass das hier eine Designentscheidung ist an die man dann ewig gebunden ist. Da sollte man sich schon <strong>vorher</strong> gedanken machen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679433</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:23:15 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 15:59:02 GMT]]></title><description><![CDATA[<p>ich hätte hier noch eine spezielle zusatzfrage die jetzt nicht in richtung performance zielt sondern auf die funktionsweise.</p>
<p>Mir ist nicht klar wie ich denn typ-abhängig die funktion aufrufen kann. Im Moment geschieht das bei mir so dass ich für jeden typ variablen anlege die ich brauchen werde und es werden halt nur die gesetzt in welchen typ-zweig gelaufen wird. Geht das nicht sauberer? So bleibt ja die Hälfte (bei 2 typen) an variablen immer auf Null z.B.:</p>
<pre><code class="language-cpp">//irgndwo in der main.cpp

int* arr_int = NULL;
float* arr_float = NULL;

//jetzt wird herausgefunden welcher typ festliegt
// z.B. durch einlesen eines files oder sonstwie das ist
//unerheblich
type = get_type(file); 

// jetzt kommt der if-zweig oder switch (man weiß ja nie welche typen noch  
// kommen)
switch(type)
{
    //t_int und t_float wurden über enum definiert
    case t_int: // wir sind im int-fall
       fülle_int_arr(arr_int);
    case t_float: // wir sind im float-fall
       fülle_float_arr(arr_float);
}

delete arr_int;
delete arr_float;
</code></pre>
<p>dnake</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679460</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679460</guid><dc:creator><![CDATA[Gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 15:59:02 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 16:05:39 GMT]]></title><description><![CDATA[<p>Habe ich etwas verpasst? Es ging doch eben noch um reell vs. komplex und nicht int vs. float.</p>
<p>Vielleicht solltest du doch etwas mehr Informationen rausrücken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679466</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679466</guid><dc:creator><![CDATA[Tippgeber]]></dc:creator><pubDate>Fri, 13 Mar 2009 16:05:39 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 16:14:58 GMT]]></title><description><![CDATA[<p>ob reell oder komplex oder int oder float ist doch für das Problem dass hier gerade gepostet habe irrelevant. Um konsistent zu bleiben hätte ich aber auch komplex benutzen können ja - sorry für die verwirrung. mehr infos sind für eine derartige frage zu viel overkill - es heißt doch immer minimalbeispiel..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679467</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679467</guid><dc:creator><![CDATA[Gambo]]></dc:creator><pubDate>Fri, 13 Mar 2009 16:14:58 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 19:03:27 GMT]]></title><description><![CDATA[<p>Shade Of Mine schrieb:</p>
<blockquote>
<p>unskilled schrieb:</p>
<blockquote>
<p>google das mal: &quot;premature optimization&quot;</p>
</blockquote>
<p>Will nur kurz anmerken dass das hier eine Designentscheidung ist an die man dann ewig gebunden ist. Da sollte man sich schon <strong>vorher</strong> gedanken machen...</p>
</blockquote>
<p>Seh ich genauso - allerdings sind dann so ne Sätze kein Argument gegen irgendetwas:<br />
&quot;außerdem ist polymorphie von der performance zu langsam - zumindest hab ich das so bisher verstanden.&quot;<br />
Wenn ich ne aufwendige, zeitintensive Fkt habe, dann ist die eben immer genauso zeitintensiv - vll ist sie immer 25 Taktzyklen früher fertig - aber wenn das so wichtig ist, sollte Performance auch keine Rolle spielen (sollte ja klar sein, dass 25 Taktzyklen entweder 0% sind, also egal oder wenns mehr ist, dann hat man au kein Performance-Problem)...<br />
Kannst mich ja gern korrigieren, wenn ich damit falsch liege - aber denke nicht, dass es da so viel geben wird ;P</p>
<p>Machts gut - ich tu mal so, als ob ich kein Kellerkind wäre und bin dann ma paar Stunden weg <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";D"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679584</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679584</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Fri, 13 Mar 2009 19:03:27 GMT</pubDate></item><item><title><![CDATA[Reply to Templates: Zur Laufzeit entscheiden? on Fri, 13 Mar 2009 19:56:58 GMT]]></title><description><![CDATA[<p>Tippgeber schrieb:</p>
<blockquote>
<p>Tachyon schrieb:</p>
<blockquote>
<p>Tippgeber schrieb:</p>
<blockquote>
<p>Klar, nennt sich Polymorphie, wundert mich, dass du das nicht kennst, das lernst man meist vor den Templates kennen.</p>
</blockquote>
<p>Polymorphie macht hier aber keinen Sinn, da Du verschiedene Klassen hast, und immer noch unterscheiden musst, für welchen Zahlentyp Du einlesen willst.</p>
</blockquote>
<p>Wieso nicht? Dafür gibt es Factories.</p>
</blockquote>
<p>Und in der Factory wird nicht über eine Fallunterscheidung entschieden, ein Objekt welchen ADTs erstellt werden soll? Ich denke mal doch. Zumal reelle Zahlen und komplexe Zahlen aufgrund der <em>unterschiedlichen</em> Datentypen eigentlich eher nicht in den Bereich dessen Fallen, was Du mit Polymorphie meinst. Und für statische Polymorphie brauchts keine Factory.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679610</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679610</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 13 Mar 2009 19:56:58 GMT</pubDate></item></channel></rss>