<?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[Zuweisen einer struct auf eine andere.]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine Struktur gegeben z.B.:</p>
<pre><code class="language-cpp">typedef struct{
	std::vector&lt;a_type&gt;		   a;
	std::string                     str1;
	std::string			str2;
} data_type;

typedef struct
{
   std::string                      EinStr;
   std::vector&lt;c_type&gt;  	EinVector;
} a_type;

typedef struct{
   char								id[ID_MAX];
   int				    Wert1;
   std::string                      Str3;
   std::string                      Str4;
   std::string                      Str5;
   std::string                      Str6;
   std::vector&lt;ZZ_type&gt;             ZZVector;
   pos_ZZ_type			    posZZ;
   std::vector&lt;pos_ZZ_type&gt;	    ZZ2Vector;
} c_type;

vector&lt;data_type&gt; 	My_files;
</code></pre>
<p>ich möchte jetzt sowas machen...</p>
<pre><code class="language-cpp">data_type My_file =  My_files[0];
</code></pre>
<p>Was ist an der Zuweisung falsch?</p>
<p>Gruß<br />
Franky</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/263516/zuweisen-einer-struct-auf-eine-andere</link><generator>RSS for Node</generator><lastBuildDate>Sat, 05 Sep 2026 19:16:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/263516.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 22 Mar 2010 09:18:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:18:36 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine Struktur gegeben z.B.:</p>
<pre><code class="language-cpp">typedef struct{
	std::vector&lt;a_type&gt;		   a;
	std::string                     str1;
	std::string			str2;
} data_type;

typedef struct
{
   std::string                      EinStr;
   std::vector&lt;c_type&gt;  	EinVector;
} a_type;

typedef struct{
   char								id[ID_MAX];
   int				    Wert1;
   std::string                      Str3;
   std::string                      Str4;
   std::string                      Str5;
   std::string                      Str6;
   std::vector&lt;ZZ_type&gt;             ZZVector;
   pos_ZZ_type			    posZZ;
   std::vector&lt;pos_ZZ_type&gt;	    ZZ2Vector;
} c_type;

vector&lt;data_type&gt; 	My_files;
</code></pre>
<p>ich möchte jetzt sowas machen...</p>
<pre><code class="language-cpp">data_type My_file =  My_files[0];
</code></pre>
<p>Was ist an der Zuweisung falsch?</p>
<p>Gruß<br />
Franky</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872358</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872358</guid><dc:creator><![CDATA[FrankTheFox]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:18:36 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:24:33 GMT]]></title><description><![CDATA[<p>FrankTheFox schrieb:</p>
<blockquote>
<p>Was ist an der Zuweisung falsch?</p>
</blockquote>
<p>Was für einen Fehler bekommst du?</p>
<p>// nb:<br />
Ein</p>
<pre><code class="language-cpp">typedef struct {
   ...
} MyType;
</code></pre>
<p>ist in C++ nicht nötig.<br />
Das geht schneller mit</p>
<pre><code class="language-cpp">struct MyClass {
   ...
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1872360</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872360</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:24:33 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:23:47 GMT]]></title><description><![CDATA[<p>Du brauchst in C++ keine Typenneudefinition, dass regelt das <em>struct</em> von Alleine. Auch würde ich den Bezeichner hinter das <em>struct</em> schreiben, finde ich persönlich halt lesbarer. Dann solltest du deine Member <em>const</em> machen und per ctor in der Initialisierungsliste initialisieren.</p>
<p>Zum Problem:<br />
Überlade den Zuweiungsoperator doch mal <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1872362</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872362</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:23:47 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:28:44 GMT]]></title><description><![CDATA[<p>Kóyaánasqatsi schrieb:</p>
<blockquote>
<p>Zum Problem:<br />
Überlade den Zuweiungsoperator doch mal <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>
</blockquote>
<p>Definitiv nicht, es reicht hier wunderbar der automatisch vom Compiler generierte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872365</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:28:44 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:35:47 GMT]]></title><description><![CDATA[<p>l'abra d'or schrieb:</p>
<blockquote>
<p>Kóyaánasqatsi schrieb:</p>
<blockquote>
<p>Zum Problem:<br />
Überlade den Zuweiungsoperator doch mal <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>
</blockquote>
<p>Definitiv nicht, es reicht hier wunderbar der automatisch vom Compiler generierte.</p>
</blockquote>
<p>Wollte gerade editieren, stimmt. Also bei mir funktioniert es so wunderbar:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;vector&gt;

template &lt;typename VectorType&gt;
struct data_type // Aussagekräftigere Bezeichner wählen!
{
	data_type&lt;VectorType&gt;(const std::vector&lt;VectorType&gt; &amp;Vector,
						  const std::string &amp;FirstString,
					      const std::string &amp;SecondString) :
		m_a(Vector),
		m_str1(FirstString),
		m_str2(SecondString) { }

    const std::vector&lt;VectorType&gt; m_a; 
    const std::string             m_str1; 
    const std::string             m_str2; 
}; 

int main()
{
	data_type&lt;unsigned int&gt; FirstType(std::vector&lt;unsigned int&gt;::vector(10),
									  &quot;Erster String-Tanga&quot;,
									  &quot;Zweiter String-Tanga&quot;);

	data_type&lt;unsigned int&gt; SndType = FirstType;

	SndType; // Breakpoint
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1872367</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872367</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:35:47 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:38:42 GMT]]></title><description><![CDATA[<p>warum machst du die member const? Kann ich nicht nachvollziehen. gibt es fast nie einen Grund für.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872371</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872371</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:38:42 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:41:49 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>warum machst du die member const? Kann ich nicht nachvollziehen. gibt es fast nie einen Grund für.</p>
</blockquote>
<p>Einfach weil man's kann. Kommt natürlich auch darauf an, wofür man es braucht. Sollte klar sein, dass man sie nicht const macht, wenn man die Member einzeln definieren muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872377</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:41:49 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:46:55 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich bekomme keinen direkten Fehler. Das Programm bleibt stehen! Wenn ich vor der Zuweisung etwas mit printf in die Konsole schreibe, dann sehe ich das. Wenn ich nachher was reinschreibe, dann nicht.</p>
<p>Ach ja, die Struktur kann ich nicht ändern, da ich sie so nutzen muß.</p>
<p>Gruß<br />
Franky</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872380</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872380</guid><dc:creator><![CDATA[FrankTheFox]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:46:55 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:49:00 GMT]]></title><description><![CDATA[<p>FrankTheFox schrieb:</p>
<blockquote>
<p>Ach ja, die Struktur kann ich nicht ändern, da ich sie so nutzen muß.</p>
</blockquote>
<p>Du musst typedef mit std::vector&lt;T&gt; benutzen? o0 Du solltest deinem Arbeitgeber ein starkes Seil und einen wackeligen Stuhl schenken.</p>
<p>Ansonsten zeig doch mal etwas mehr Code, so ist das eher ein Rätselraten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872383</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872383</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:49:00 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 09:56:42 GMT]]></title><description><![CDATA[<p>FrankTheFox schrieb:</p>
<blockquote>
<p>ich bekomme keinen direkten Fehler. Das Programm bleibt stehen! Wenn ich vor der Zuweisung etwas mit printf in die Konsole schreibe, dann sehe ich das. Wenn ich nachher was reinschreibe, dann nicht.</p>
</blockquote>
<p>Dann liegts nicht an der Zuweisung. Wenn du wie du es gezeigt hast keinen op= hast, kann da nichts stehenbleiben bei der Zuweisung. Drei Bitten:</p>
<p>a) Zeige relevanten Code, d.h. den Code wo die Zuweisung stattfindet, aber auch nicht mehr.<br />
b) Sei dir bewusst, dass es einen Unterschied zwischen C und C++ gibt. typedef struct ist C und in C++ nicht nötig. printf ist C und in C++ nicht üblich aus diversen Gründen. Dazu gibts die iostreams.<br />
c) Lies dir den Link in meiner Signatur durch, da gibts wertvolle Tips wie du hier im Forum schneller zu einer zufriedenstellenden Antwort kommst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872389</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Mon, 22 Mar 2010 09:56:42 GMT</pubDate></item><item><title><![CDATA[Reply to Zuweisen einer struct auf eine andere. on Mon, 22 Mar 2010 10:32:14 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>korrekt! Die blöde Struct ist nicht intialisiert! Man kann das u.a. am vector prüfen ( der enthalten ist ). Ist der empty, dann exisieren keine Daten.</p>
<p>Der Code ist grßteils (so wie es den Anschein hat C), also die Datei in der dieser Code steht, ist eine cpp. Ja ich weiß Dateiendungen sind geduldig, aber die Elemente der Struct sind std::string ( das ist eher cpp).<br />
Die typedefs stehen so drin und kann ich nicht ändern. Das Programm scheint eher ein wilder Mix aus C/C++ zu sein. Auch die printf's sind an einigen Stellen so drin.</p>
<p>Gruß<br />
Franky</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872400</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872400</guid><dc:creator><![CDATA[FrankTheFox]]></dc:creator><pubDate>Mon, 22 Mar 2010 10:32:14 GMT</pubDate></item></channel></rss>