<?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[dynamische Template Variablen]]></title><description><![CDATA[<p>hi Leute</p>
<p>folgendes Problem:<br />
Meine Programmieraufgabe besteht darin, eine Matrix als generischen Datentyp zu schreiben, sprich:</p>
<pre><code>template &lt;class T, int M, int N&gt; class CMatrix
</code></pre>
<p>Mein Problem ist, wenn ich die Operatoren schreibe, muss ich ja eine neue Instanz dieser Klasse zurückgeben, ich kann aber keine erzeugen, weil die Zeilen und Spaltenanzahl benötigt wird, und diese im Templateaufruf zur Kompilerzeit feststehen müssen.</p>
<p>Eine Möglichkeit wäre, das Array, was der Matrix zu Grunde liegt dynamisch anzulegen, Ich weiß nur nicht, wie viel Wert der Professor auf die Parameter M und N legt. Gibt Es eine Möglichkeit diese witerhin zu nutzen, oder muss ich auf die dynamische Methode zurückgreifen?</p>
<p>MfG<br />
Ifi</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/227406/dynamische-template-variablen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 30 Sep 2026 03:19:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/227406.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 14 Nov 2008 18:52:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to dynamische Template Variablen on Fri, 14 Nov 2008 18:52:29 GMT]]></title><description><![CDATA[<p>hi Leute</p>
<p>folgendes Problem:<br />
Meine Programmieraufgabe besteht darin, eine Matrix als generischen Datentyp zu schreiben, sprich:</p>
<pre><code>template &lt;class T, int M, int N&gt; class CMatrix
</code></pre>
<p>Mein Problem ist, wenn ich die Operatoren schreibe, muss ich ja eine neue Instanz dieser Klasse zurückgeben, ich kann aber keine erzeugen, weil die Zeilen und Spaltenanzahl benötigt wird, und diese im Templateaufruf zur Kompilerzeit feststehen müssen.</p>
<p>Eine Möglichkeit wäre, das Array, was der Matrix zu Grunde liegt dynamisch anzulegen, Ich weiß nur nicht, wie viel Wert der Professor auf die Parameter M und N legt. Gibt Es eine Möglichkeit diese witerhin zu nutzen, oder muss ich auf die dynamische Methode zurückgreifen?</p>
<p>MfG<br />
Ifi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614877</guid><dc:creator><![CDATA[IFI ManiA]]></dc:creator><pubDate>Fri, 14 Nov 2008 18:52:29 GMT</pubDate></item><item><title><![CDATA[Reply to dynamische Template Variablen on Fri, 14 Nov 2008 19:07:35 GMT]]></title><description><![CDATA[<p>Wenn du die Templateargumente zur Compilezeit nicht weisst, hast du keine andere Möglichkeit, das über dynamischen Speicher zu verwalten. Du kannst intern beispielsweise <code>std::vector</code> nutzen.</p>
<pre><code class="language-cpp">template &lt;typename T&gt;
class Matrix
{
    public:
        Matrix(unsigned int Rows, unsigned int Columns);
        T&amp; At(unsigned int Y, unsigned int X);

    private:
        std::vector&lt;std::vector&lt;T&gt; &gt; myMat;
};

template &lt;typename T&gt;
Matrix::Matrix(unsigned int Rows, unsigned int Columns)
: myMat(Rows, std::vector&lt;T&gt;(Columns))
{

}

template &lt;typename T&gt;
T&amp; At(unsigned int Y, unsigned int X)
{
    return myMat[Y][X];
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1614880</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614880</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 14 Nov 2008 19:07:35 GMT</pubDate></item><item><title><![CDATA[Reply to dynamische Template Variablen on Fri, 14 Nov 2008 23:09:14 GMT]]></title><description><![CDATA[<p>Um es noch Kürzer zu formulieren:<br />
Templates werden zur Compilezeit ausgewertet, zur Laufzeit ist die Auflösung nicht mehr möglich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1614961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1614961</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Fri, 14 Nov 2008 23:09:14 GMT</pubDate></item></channel></rss>