<?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[Problem mit Vectorobjekt]]></title><description><![CDATA[<p>Hallo Zusammen.</p>
<p>ich habe mal wieder ein Problem mit meinen Klassen <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>
<p>und zwar will ich als Parameter einer Klasse struct ein vector-Feld anlegen um Zahlen zu speichern.</p>
<p>folgendes hatte ich mir überlegt:</p>
<pre><code class="language-cpp">struct sondenfeld {
	int sondenanzahl;

	vector &lt;int&gt; x_koordinaten();   
	vector &lt;int&gt; y_koordinaten();	 

        //Setter
	void set_X_coor(int i, int x){
		x_koordinaten[i] = x;
	};
	void set_Y_coor(int i, int y){
		y_koordinaten[i] = y;
	};

	// GETTER

	double get_X_coor_sonde(int i){
		return x_koordinaten[i] ;
	};
	double get_Y_coor_sonde(int i){
		return y_koordinaten[i] ;
	};

       // Init
	void initialisieren(int anzahl){
		sondenanzahl = anzahl;

		while (anzahl &gt;= 0){
			x_koordinaten.push_back(1);
			y_koordinaten.push_back(1);
			--anzahl;
		}
	};

        // size
	int get_size_X(){
		return x_koordinaten.size();
	};
</code></pre>
<p>das funktioniert aber so irgendwie nicht --&gt; Fehlermeldung:<br />
&quot;sondenfeld::x_koordinaten&quot;: Dem Funktionsaufruf fehlt die Argumentliste. Verwenden Sie &quot;&amp;sondenfeld::x_koordinaten&quot;, um einen Zeiger auf den Member zu erstellen...</p>
<p>Habt ihr da ne Lösung?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/220288/problem-mit-vectorobjekt</link><generator>RSS for Node</generator><lastBuildDate>Tue, 25 Aug 2026 16:41:18 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/220288.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 14 Aug 2008 09:34:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Vectorobjekt on Thu, 14 Aug 2008 09:34:24 GMT]]></title><description><![CDATA[<p>Hallo Zusammen.</p>
<p>ich habe mal wieder ein Problem mit meinen Klassen <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>
<p>und zwar will ich als Parameter einer Klasse struct ein vector-Feld anlegen um Zahlen zu speichern.</p>
<p>folgendes hatte ich mir überlegt:</p>
<pre><code class="language-cpp">struct sondenfeld {
	int sondenanzahl;

	vector &lt;int&gt; x_koordinaten();   
	vector &lt;int&gt; y_koordinaten();	 

        //Setter
	void set_X_coor(int i, int x){
		x_koordinaten[i] = x;
	};
	void set_Y_coor(int i, int y){
		y_koordinaten[i] = y;
	};

	// GETTER

	double get_X_coor_sonde(int i){
		return x_koordinaten[i] ;
	};
	double get_Y_coor_sonde(int i){
		return y_koordinaten[i] ;
	};

       // Init
	void initialisieren(int anzahl){
		sondenanzahl = anzahl;

		while (anzahl &gt;= 0){
			x_koordinaten.push_back(1);
			y_koordinaten.push_back(1);
			--anzahl;
		}
	};

        // size
	int get_size_X(){
		return x_koordinaten.size();
	};
</code></pre>
<p>das funktioniert aber so irgendwie nicht --&gt; Fehlermeldung:<br />
&quot;sondenfeld::x_koordinaten&quot;: Dem Funktionsaufruf fehlt die Argumentliste. Verwenden Sie &quot;&amp;sondenfeld::x_koordinaten&quot;, um einen Zeiger auf den Member zu erstellen...</p>
<p>Habt ihr da ne Lösung?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1564553</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1564553</guid><dc:creator><![CDATA[free_style]]></dc:creator><pubDate>Thu, 14 Aug 2008 09:34:24 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vectorobjekt on Thu, 14 Aug 2008 09:41:08 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">vector &lt;int&gt; x_koordinaten();  
    vector &lt;int&gt; y_koordinaten();
</code></pre>
<p>mach mal die Klammern weg:</p>
<pre><code class="language-cpp">vector &lt;int&gt; x_koordinaten;  
    vector &lt;int&gt; y_koordinaten;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1564560</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1564560</guid><dc:creator><![CDATA[MiP]]></dc:creator><pubDate>Thu, 14 Aug 2008 09:41:08 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vectorobjekt on Thu, 14 Aug 2008 10:18:32 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void initialisieren(int anzahl){
  sondenanzahl = anzahl;
  x_koordinaten.resize(anzahl, 1);
  y_koordinaten.resize(anzahl, 1);
}
</code></pre>
<p>Etwas eleganter. <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>
<p>Wäre es nicht auch sinnvoll ein struct zu schreiben das x und y beinhaltet und dann nur einen vector zu nehmen? sondenanzahl kannst auch durch koordinaten.size() dann ersetzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1564585</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1564585</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Thu, 14 Aug 2008 10:18:32 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vectorobjekt on Thu, 14 Aug 2008 11:03:34 GMT]]></title><description><![CDATA[<p>hej - Danke!!</p>
<p>Funktioniert alles wunderprächtig <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1564614</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1564614</guid><dc:creator><![CDATA[free_style]]></dc:creator><pubDate>Thu, 14 Aug 2008 11:03:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Vectorobjekt on Thu, 14 Aug 2008 12:39:40 GMT]]></title><description><![CDATA[<p>free_style schrieb:</p>
<blockquote>
<pre><code class="language-cpp">vector &lt;int&gt; x_koordinaten();   
	vector &lt;int&gt; y_koordinaten();
</code></pre>
</blockquote>
<p>wenn ich sowas sehe, dann fühle ich mich immer genötigt zu antworten. <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="😉"
    /><br />
Eine X-Koordinate (hier einer Sonde) gehört mehr zu der Y-Koordinate der identische Sonde als zu einer X-Koordinate irgendeiner anderen Sonde. D.h. es fehlt ein Typ der X- und Y-Koordinate zusammenfasst und erst danach sollte man dies in einem Container organisieren.</p>
<p>Ich habe mir erlaubt Deinen Code in diesem Sinne zu kommentieren:</p>
<pre><code class="language-cpp">struct Koordinate //# fasse x und y zu 'Koordinate' zusammen
{
    Koordinate() : m_x(1), m_y(1) {}
    Koordinate( int x, int y ) : m_x( x ), m_y( y ) {}
    int m_x, m_y;  // oder double !?
};

struct sondenfeld {
    std::vector &lt;Koordinate&gt; koordinaten;  //# std::.., da im Header-File

    //Setter ??                                //# wozu Setter? -&gt; Design?
    void set_coor(int i, const Koordinate&amp; xy ){
        koordinaten[i] = xy;
    };
    // GETTER   
    Koordinate get_coor_sonde(int i) const { //# const bei get_*
        return koordinaten[i];
    };

    //# Init geschieht im Konstruktor
    explicit sondenfeld( int anzahl )
        : koordinaten( anzahl, Koordinate(1,1) )
    {}

    // size
    int get_size() const {
        return koordinaten.size();
    }
};
</code></pre>
<p>Der Unterschied ist ein klassisches Beispiel zwischen prozeduraler und objektorientierter Programmierung.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1564706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1564706</guid><dc:creator><![CDATA[Werner_logoff]]></dc:creator><pubDate>Thu, 14 Aug 2008 12:39:40 GMT</pubDate></item></channel></rss>