<?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[schwierigkeiten bei namespace zuordnung]]></title><description><![CDATA[<p>Hallo ins Forum. Ich habe ein Problem mit diesem Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

namespace a 
{ 
	namespace b 
	{
		namespace c
		{
			template&lt;typename T&gt;
			class wurst
			{
				T a;
			};
		}
	}
}

template&lt;typename T&gt;
class Test
{
protected:
	typedef a::b::c::wurst&lt;T&gt; wurst;
public:
	const wurst &amp;GetWurst() const;
};

template&lt;typename DataType&gt;
const wurst Test&lt;DataType&gt;::GetWurst() const
{
	std::cout &lt;&lt; &quot;wurst&quot; &lt;&lt; std::endl;
}
</code></pre>
<p>Wenn ich z.B. versuche:</p>
<pre><code class="language-cpp">Test&lt;double&gt; test;
</code></pre>
<p>Dann bekomme ich diesen Fehler für die Zeile (28) :</p>
<pre><code>error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
</code></pre>
<p>Wie lautet die Syntax für solche Abkürzungen? Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/291200/schwierigkeiten-bei-namespace-zuordnung</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 21:25:21 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/291200.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Aug 2011 14:11:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to schwierigkeiten bei namespace zuordnung on Fri, 12 Aug 2011 14:11:32 GMT]]></title><description><![CDATA[<p>Hallo ins Forum. Ich habe ein Problem mit diesem Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

namespace a 
{ 
	namespace b 
	{
		namespace c
		{
			template&lt;typename T&gt;
			class wurst
			{
				T a;
			};
		}
	}
}

template&lt;typename T&gt;
class Test
{
protected:
	typedef a::b::c::wurst&lt;T&gt; wurst;
public:
	const wurst &amp;GetWurst() const;
};

template&lt;typename DataType&gt;
const wurst Test&lt;DataType&gt;::GetWurst() const
{
	std::cout &lt;&lt; &quot;wurst&quot; &lt;&lt; std::endl;
}
</code></pre>
<p>Wenn ich z.B. versuche:</p>
<pre><code class="language-cpp">Test&lt;double&gt; test;
</code></pre>
<p>Dann bekomme ich diesen Fehler für die Zeile (28) :</p>
<pre><code>error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
</code></pre>
<p>Wie lautet die Syntax für solche Abkürzungen? Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2105390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2105390</guid><dc:creator><![CDATA[sadsads]]></dc:creator><pubDate>Fri, 12 Aug 2011 14:11:32 GMT</pubDate></item><item><title><![CDATA[Reply to schwierigkeiten bei namespace zuordnung on Fri, 12 Aug 2011 14:14:57 GMT]]></title><description><![CDATA[<p><code>wurst</code> ausserhalb der Klasse muss qualifiziert werden. Ausserdem stimmen die Rückgabetypen nicht überein ( <code>const wurst</code> vs. <code>const wurst&amp;</code> ). Und warum nennst du Templateparamter in der Klassendefinition und in den Methodendefinitionen verschieden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2105392</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2105392</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 12 Aug 2011 14:14:57 GMT</pubDate></item><item><title><![CDATA[Reply to schwierigkeiten bei namespace zuordnung on Fri, 12 Aug 2011 14:17:18 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">template&lt;typename DataType&gt;
const wurst Test&lt;DataType&gt;::GetWurst() const
</code></pre>
<p>Hier wird wurst im Scope der Deklaration gesucht und folglich nicht gefunden. Erst nach dem Test&lt;DataType&gt;:: befindet man sich im Scope der Klasse. Also</p>
<pre><code class="language-cpp">template&lt;typename DataType&gt;
const typename Test&lt;DataType&gt;::wurst&amp; Test&lt;DataType&gt;::GetWurst() const
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2105393</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2105393</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Fri, 12 Aug 2011 14:17:18 GMT</pubDate></item><item><title><![CDATA[Reply to schwierigkeiten bei namespace zuordnung on Fri, 12 Aug 2011 14:17:47 GMT]]></title><description><![CDATA[<p>[quote=&quot;Nexus&quot;] <code>wurst</code> ausserhalb der Klasse muss qualifiziert werden.</p>
<blockquote>
<p>Warum? ich habe es doch im typedef qualifiziert? Wenn das Template generiert wird, muss es doch alles benötigte wissen.</p>
<p>[quote=&quot;Nexus&quot;]Ausserdem stimmen die Rückgabetypen nicht überein ( <code>const wurst</code> vs. <code>const wurst&amp;</code> ). Und warum nennst du Templateparamter in der Klassendefinition und in den Methodendefinitionen verschieden?</p>
</blockquote>
<p>Sagen wir mal dass diese Sachen stimmen. Ich habe den Quellcode in möglichst einfache Sachen geändert.. und habe anscheinend was vergessen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2105395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2105395</guid><dc:creator><![CDATA[sadsads]]></dc:creator><pubDate>Fri, 12 Aug 2011 14:17:47 GMT</pubDate></item><item><title><![CDATA[Reply to schwierigkeiten bei namespace zuordnung on Fri, 12 Aug 2011 14:24:58 GMT]]></title><description><![CDATA[<p>Hat wunderbar funktioniert. Danke für die schnelle Hilfe an euch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2105398</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2105398</guid><dc:creator><![CDATA[sadsads]]></dc:creator><pubDate>Fri, 12 Aug 2011 14:24:58 GMT</pubDate></item></channel></rss>