<?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 structuren und zeigern]]></title><description><![CDATA[<p>Also...<br />
Hallo erstmal.</p>
<p>Ich will mit OpenGL eine Art Spiel erstellen und habe dazu die folgenden structs deklarieret: ( Das Problem hat aber ausschließlich mit c++ und nicht mit OGL zu tun, also hab ich das Problem in diesem Forum hier geschildert )</p>
<pre><code class="language-cpp">struct Vertex 
{
GLfloat x, y, z;
GLfloat tx, ty;
};

struct Viereck 
{
Vertex a, b, c, d;
};

struct Dreieck
{
Vertex l, o, r;
};

struct Sektor 
{
std::string Name;
int AV, AD;
Dreieck * dreieck[50];
Viereck * viereck[50];
};

Sektor sektor1;
</code></pre>
<p>Soweit allse klar.<br />
Jetzt wollte ich Werte zuweisen. Seht unten...</p>
<pre><code class="language-cpp">sektor1.Name = &quot;Standardsektor.&quot;; // alles klar...
sektor1.AV = 1; 
sektor1.viereck[0] = new Viereck;      // bis hier kein Fehler
sektor1.viereck[0].a.x = -10.0f;       // siehe unten ...
</code></pre>
<p>Jetzt bekomme ich folgende Fehlermeldung, die ich mir absolut nicht erklären kann.</p>
<pre><code>`a' has not been declared 
request for member of non-aggregate type before '.' token
</code></pre>
<p>Ich wäre euch sehr dankbar, wenn ihr mir weiterhelfen könntet.<br />
Ich hab auch schon den Strukturoperator zwischen sektor1 und viereck probiert, auch dann geht es nicht, ich bekomme die folgende Fehlermeldung:</p>
<pre><code>base operand of `-&gt;' has non-pointer type `Sektor'
</code></pre>
<p>Danke schon mal im voraus.</p>
<p>mfg</p>
<p>Tim</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/239217/problem-mit-structuren-und-zeigern</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 17:14:34 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/239217.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 20 Apr 2009 18:47:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit structuren und zeigern on Mon, 20 Apr 2009 18:47:05 GMT]]></title><description><![CDATA[<p>Also...<br />
Hallo erstmal.</p>
<p>Ich will mit OpenGL eine Art Spiel erstellen und habe dazu die folgenden structs deklarieret: ( Das Problem hat aber ausschließlich mit c++ und nicht mit OGL zu tun, also hab ich das Problem in diesem Forum hier geschildert )</p>
<pre><code class="language-cpp">struct Vertex 
{
GLfloat x, y, z;
GLfloat tx, ty;
};

struct Viereck 
{
Vertex a, b, c, d;
};

struct Dreieck
{
Vertex l, o, r;
};

struct Sektor 
{
std::string Name;
int AV, AD;
Dreieck * dreieck[50];
Viereck * viereck[50];
};

Sektor sektor1;
</code></pre>
<p>Soweit allse klar.<br />
Jetzt wollte ich Werte zuweisen. Seht unten...</p>
<pre><code class="language-cpp">sektor1.Name = &quot;Standardsektor.&quot;; // alles klar...
sektor1.AV = 1; 
sektor1.viereck[0] = new Viereck;      // bis hier kein Fehler
sektor1.viereck[0].a.x = -10.0f;       // siehe unten ...
</code></pre>
<p>Jetzt bekomme ich folgende Fehlermeldung, die ich mir absolut nicht erklären kann.</p>
<pre><code>`a' has not been declared 
request for member of non-aggregate type before '.' token
</code></pre>
<p>Ich wäre euch sehr dankbar, wenn ihr mir weiterhelfen könntet.<br />
Ich hab auch schon den Strukturoperator zwischen sektor1 und viereck probiert, auch dann geht es nicht, ich bekomme die folgende Fehlermeldung:</p>
<pre><code>base operand of `-&gt;' has non-pointer type `Sektor'
</code></pre>
<p>Danke schon mal im voraus.</p>
<p>mfg</p>
<p>Tim</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1698830</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1698830</guid><dc:creator><![CDATA[Tim1995]]></dc:creator><pubDate>Mon, 20 Apr 2009 18:47:05 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit structuren und zeigern on Mon, 20 Apr 2009 19:27:01 GMT]]></title><description><![CDATA[<p>sektor.viereck[0] ist ein Pointer, also muss danach der Pointerzugriffsoperator:</p>
<pre><code class="language-cpp">sektor1.viereck[0]-&gt;a.x = -10.0f;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1698851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1698851</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Mon, 20 Apr 2009 19:27:01 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit structuren und zeigern on Tue, 21 Apr 2009 09:20:03 GMT]]></title><description><![CDATA[<p>...und überleg Dir mal, ob es nicht sinnvoller ist, statt</p>
<p>Dreieck * dreieck[50];<br />
Viereck * viereck[50];</p>
<p>einen der STL Container, z.B. std::vector zu benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1699030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1699030</guid><dc:creator><![CDATA[jencas]]></dc:creator><pubDate>Tue, 21 Apr 2009 09:20:03 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit structuren und zeigern on Tue, 21 Apr 2009 17:04:41 GMT]]></title><description><![CDATA[<p>oh, danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1699293</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1699293</guid><dc:creator><![CDATA[Tim1995]]></dc:creator><pubDate>Tue, 21 Apr 2009 17:04:41 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit structuren und zeigern on Tue, 21 Apr 2009 20:16:19 GMT]]></title><description><![CDATA[<p>Oder <code>std::tr1::array</code> ( <code>boost::array</code> ).</p>
<p>Brauchst du wirklich die Dynamik manueller Speicherverwaltung? Dann solltest du auch immer an <code>delete</code> denken... <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>Sonst könntest du auch ein Array von Stackobjekten erstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1699393</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1699393</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 21 Apr 2009 20:16:19 GMT</pubDate></item></channel></rss>