<?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[Wie kann man einen vector an eine Methode als Parameter übergeben?]]></title><description><![CDATA[<p>Hi,</p>
<p>ich schreibe gerade eine automation DLL (MFC).</p>
<p>Ich möchte einer bestehenden Klasse eine Methode hinzufügen,<br />
der als Parameter einen vector übergeben werden soll.</p>
<p>Hat irgendwer eine Idee?<br />
Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/175791/wie-kann-man-einen-vector-an-eine-methode-als-parameter-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 15:28:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/175791.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 14 Mar 2007 09:59:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 09:59:17 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich schreibe gerade eine automation DLL (MFC).</p>
<p>Ich möchte einer bestehenden Klasse eine Methode hinzufügen,<br />
der als Parameter einen vector übergeben werden soll.</p>
<p>Hat irgendwer eine Idee?<br />
Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245251</guid><dc:creator><![CDATA[AdmD]]></dc:creator><pubDate>Wed, 14 Mar 2007 09:59:17 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 10:03:08 GMT]]></title><description><![CDATA[<p>typedef sollte helfen. <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/1245253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245253</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Wed, 14 Mar 2007 10:03:08 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 10:17:27 GMT]]></title><description><![CDATA[<p>Wie soll das funktionieren?<br />
Hast Du ein Beispiel?</p>
<p>Also. Mein Problem ist, dass beim Anlegen einer neuer Methode der Datentyp mitangegen werden muss. Würde LONG ausgewählt, sähe das in so aus:</p>
<p>afx_msg BOOL Draw(long Wert);<br />
DISP_FUNCTION(Epam_Button, &quot;Draw&quot;, Draw, VT_BOOL, VTS_I4)</p>
<p>Da man aber kein Vector auswählen kann, meine Frage nun, wie kann man einen<br />
vector als Parameter übergeben?</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245260</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245260</guid><dc:creator><![CDATA[AdmD]]></dc:creator><pubDate>Wed, 14 Mar 2007 10:17:27 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 10:35:54 GMT]]></title><description><![CDATA[<p>Oh, dann bin ich raus, das sieht so fremd aus. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245275</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245275</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Wed, 14 Mar 2007 10:35:54 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 10:45:33 GMT]]></title><description><![CDATA[<p>Vielleicht könnte man ja in dem long Wert einen Pointer (Referenz) auf den vector unterbringen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245285</guid><dc:creator><![CDATA[jencas]]></dc:creator><pubDate>Wed, 14 Mar 2007 10:45:33 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 10:52:30 GMT]]></title><description><![CDATA[<p>Ich muss aber in der Methode auf die einzelnen Elemente des vectors zugreifen. Keine Ahnung, wie das mit einem Pointer gehen soll <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245289</guid><dc:creator><![CDATA[AdmD]]></dc:creator><pubDate>Wed, 14 Mar 2007 10:52:30 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 13:18:24 GMT]]></title><description><![CDATA[<p>Du weißt aber was nen Pointer ist?! Und wofür steht: VTS_I4?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245413</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245413</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 14 Mar 2007 13:18:24 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 14:05:15 GMT]]></title><description><![CDATA[<p>Also mir qualmt die Birne, dass man's aus'm Weltraum beobachten könnte <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 ich glaube die Lösung gefunden zu haben aaalso:</p>
<pre><code class="language-cpp">// Struct aus dem Header

typedef struct
{
	CString FirstName;
	CString AltName;
	CString Index;
	COLORREF Color;
} TUserColor;

//Methode &quot;Build&quot; aus Klasse &quot;Builder&quot; übergibt den Vector an Methode &quot;Draw&quot; aus Klasse &quot;Epam_Button&quot;

BOOL Builder::Build(long DestHDC)
{
	Epam_Button *cButton = new Epam_Button; // Erzeuge Instanz von Klasse &quot;Epam_Button&quot;
	cButton-&gt;Draw((long*) &amp;m_UserColor); // Übergebe Pointer von vector&lt;TUserColor&gt;
	delete cButton; // vernichte Instanz
} 

void Epam_Button::Draw(long FAR* User) 
{
	vector&lt;TUserColor&gt; UserB = (vector&lt;TUserColor&gt;&amp;) *User; // Cast auf vector&lt;TUserColor&gt; unter Angabe des Pointers
	AfxMessageBox( UserB[0].AltName ,0,0 ); // siehe da es funzt :p 
}
</code></pre>
<p>Was meint ihr dazu?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245461</guid><dc:creator><![CDATA[AdmD]]></dc:creator><pubDate>Wed, 14 Mar 2007 14:05:15 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Wed, 14 Mar 2007 19:07:12 GMT]]></title><description><![CDATA[<p>auauauauauAUAUAU.</p>
<p>Du kannst in einer -&gt; automation &lt;- DLL doch keinen std::vector übergeben.<br />
Zumindest macht es überhaupt garkeinen Sinn, denn es wäre dann wohl schwerlich noch automation kompatibel. Nen?</p>
<p>Du kannst ein SAFEARRAY nehmen, oder nen Pointer + Länge übergeben. Beim Pointer schreibst du dann das &quot;length_is&quot; Attribut dazu, und fertig.<br />
Ersteres ist wirklich voll automation kompatibel, zweiteres tuts zumindest für automatisches wire-marshalling (DCOM etc.).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245709</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245709</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 14 Mar 2007 19:07:12 GMT</pubDate></item><item><title><![CDATA[Reply to Wie kann man einen vector an eine Methode als Parameter übergeben? on Thu, 15 Mar 2007 09:17:36 GMT]]></title><description><![CDATA[<p>Ich habe insgeheim gehofft, dass jemand mein Ergebnis kritisiert.<br />
Wäre auch zu schön gewesen...</p>
<p>Also, ich habe erst vor 4 Wochen mit C++ (Mfc) angefangen. Und habe jahrelange Erfahrung mit VB6.0.</p>
<p>Warum kann man kein std::vector in einer automation DLL übergeben? Was macht kein Sinn?</p>
<p>Das mit dem Pointer + Länge hört sich gut an.</p>
<p>Kannst Du mir bitte ein Beispiel posten?</p>
<p>Vielen Dank für deine Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245902</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245902</guid><dc:creator><![CDATA[AdmD]]></dc:creator><pubDate>Thu, 15 Mar 2007 09:17:36 GMT</pubDate></item></channel></rss>