<?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[Die 4 Operatoren &amp;quot;-&amp;gt;&amp;quot; &amp;quot;.&amp;quot; &amp;quot;-&amp;gt;*&amp;quot; &amp;quot;.*&amp;quot;]]></title><description><![CDATA[<p>Hallo zusammen</p>
<p>wie verhällt es sich bei den Operatoren bei den Ausdrücken</p>
<p>Objekt.Element<br />
Objekt.*PointerAufElement(hier Offsetpointer)</p>
<p>PointerAufObjekt-&gt;Element<br />
PointerAufObjekt-&gt;*PointerAufElement(hier Offsetpointer)</p>
<p>&amp;Element</p>
<p>Bei welchem Ausdruck wird nur das Element in den Cash geladen und nicht das ganze Objekt um auf das Element zuzugreifen? Wie z.B. mit &amp;Element wobei das umstendlich ist...</p>
<p>Danke, KEN</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/173111/die-4-operatoren-quot-gt-quot-quot-quot-quot-gt-quot-quot-quot</link><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 04:35:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/173111.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Feb 2007 08:07:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Die 4 Operatoren &amp;quot;-&amp;gt;&amp;quot; &amp;quot;.&amp;quot; &amp;quot;-&amp;gt;*&amp;quot; &amp;quot;.*&amp;quot; on Mon, 12 Feb 2007 08:07:47 GMT]]></title><description><![CDATA[<p>Hallo zusammen</p>
<p>wie verhällt es sich bei den Operatoren bei den Ausdrücken</p>
<p>Objekt.Element<br />
Objekt.*PointerAufElement(hier Offsetpointer)</p>
<p>PointerAufObjekt-&gt;Element<br />
PointerAufObjekt-&gt;*PointerAufElement(hier Offsetpointer)</p>
<p>&amp;Element</p>
<p>Bei welchem Ausdruck wird nur das Element in den Cash geladen und nicht das ganze Objekt um auf das Element zuzugreifen? Wie z.B. mit &amp;Element wobei das umstendlich ist...</p>
<p>Danke, KEN</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1227184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227184</guid><dc:creator><![CDATA[KEN]]></dc:creator><pubDate>Mon, 12 Feb 2007 08:07:47 GMT</pubDate></item><item><title><![CDATA[Reply to Die 4 Operatoren &amp;quot;-&amp;gt;&amp;quot; &amp;quot;.&amp;quot; &amp;quot;-&amp;gt;*&amp;quot; &amp;quot;.*&amp;quot; on Mon, 12 Feb 2007 08:17:38 GMT]]></title><description><![CDATA[<p>Gibt's diese Frage auch in verständlichem Deutsch?</p>
<p>Mal der Versuch einer Beantwortung:<br />
C++ macht keine Annahmen über Caching und konkrete Speicherverwaltung - das ist Sache des Betriebssystems. Also hängt es auch von deinem System (und vermutlich von der Größe des Gesamtobjekts) ab, ob das Programm bei einem Member-Zugriff das komplette Objekt oder nur die benötigten Teile in den Cache lädt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1227186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227186</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 12 Feb 2007 08:17:38 GMT</pubDate></item><item><title><![CDATA[Reply to Die 4 Operatoren &amp;quot;-&amp;gt;&amp;quot; &amp;quot;.&amp;quot; &amp;quot;-&amp;gt;*&amp;quot; &amp;quot;.*&amp;quot; on Mon, 12 Feb 2007 11:00:36 GMT]]></title><description><![CDATA[<p>Sorry... ich war so um Zeugs, dass ich nicht gemerkt habe, dass meine Frage undeutlich war.<br />
Darum nochmals ein Versuch...</p>
<p>Ich habe die Klasse</p>
<p>class Objekt<br />
{<br />
float Element;<br />
...<br />
};</p>
<p>wobei sizeof(O) = 322</p>
<p>Ich möchte nun diverse solcher Objekte auf Grund ihres Elementwertes bestimmten Bereichen zuordnen.<br />
Also:</p>
<p>// ------------------------------------------------------------------------------------------------<br />
// Zugriff über Objekt<br />
// ------------------------------------------------------------------------------------------------</p>
<p>class Objekt<br />
{<br />
float Element;<br />
...<br />
};</p>
<p>Objekt O1, 02;<br />
if (O1.Element &gt; O2.Element) ...</p>
<p>?? Lade ich hierfür den Vergleich die ganzen O1 und O2 in den Cash um Zugriff auf die Elemente zu haben oder werden lediglich die Elemente in den Cash geladen, da es nur diese für den Vergleich benötigt?</p>
<p>// ------------------------------------------------------------------------------------------------<br />
// Zugriff über PointerAufElement<br />
// ------------------------------------------------------------------------------------------------</p>
<p>class Objekt<br />
{<br />
float Element;<br />
...<br />
};<br />
Objekt O1, 02;</p>
<p>float *e1 = &amp;(O1.Element);<br />
float *e2 = &amp;(O2.Element);</p>
<p>if (*e1 &gt; *e2)</p>
<p>?? Hier werden nur die Elemente für den Vergleich in den Cash geladen (so denke ich)</p>
<p>// ------------------------------------------------------------------------------------------------<br />
// Zugriff über PointerAufObjekt und Elementzeiger<br />
// ------------------------------------------------------------------------------------------------</p>
<p>class Objekt<br />
{<br />
float Element;<br />
...<br />
};<br />
float Objekt :: *ElementZeiger = &amp;Objekt::Element;<br />
Objekt *O1, *02;</p>
<p>if ( (O1-&gt;* ElementZeiger ) &gt; (O2-&gt;* ElementZeiger))</p>
<p>?? Werden hier auch nur die Elementwerte für den Vergleich in den Cash geladen? Wenn ja, wäre ja super...</p>
<p>Ich habe ca. 10'000 solcher Objekte die ich in 10'000(Fakultät) Schritten zuteilen muss.<br />
Dabei kann ich nicht ein Objekt nehmen und dann alle Vergleiche bei diesem durchführen.<br />
Sondern der Vergleich geschieht bei jedem Schritt zwischen zwei anderen Objekten.<br />
Da ich aber jedes Objekt mit jedem anderen Objekt vergleichen muss (darum Fakultät), muss ich jedes Objekt öfters aufrufen.<br />
Wenn ich jedes Mal 322 Byte verschieben muss ist der Aufwand enorm und dies möchte ich vermeiden.</p>
<p>Ken</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1227285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227285</guid><dc:creator><![CDATA[KEN*]]></dc:creator><pubDate>Mon, 12 Feb 2007 11:00:36 GMT</pubDate></item><item><title><![CDATA[Reply to Die 4 Operatoren &amp;quot;-&amp;gt;&amp;quot; &amp;quot;.&amp;quot; &amp;quot;-&amp;gt;*&amp;quot; &amp;quot;.*&amp;quot; on Mon, 12 Feb 2007 11:18:11 GMT]]></title><description><![CDATA[<p>Wie gesagt: Darüber macht der C++ Standard keine Aussagen, sondern überlässt es dem Compiler. Aber ein halbwegs intelligenter Compiler dürfte das (in jeder Variation) so weit optimieren können, daß er nur die tatsächlich benötigten Daten in den Cache (der übrigens nichts mit &quot;Cash&quot; zu tun hat) laden muß.</p>
<p>PS: Mir ist zwar nicht ganz klar, was du vorhast - aber eventuell solltest du deine Objekte sortieren, dann mußt du im weiteren Programmverlauf überhaupt nicht mehr auf die Elementvergleiche zurückgreifen, sondern kannst Indizes in deinem Array vergleichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1227299</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227299</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 12 Feb 2007 11:18:11 GMT</pubDate></item></channel></rss>