<?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[[gelöst] Zugriffsverletzung bei Funktionsaufruf?]]></title><description><![CDATA[<p>Ich habe folgenden Code</p>
<pre><code class="language-cpp">ShapingFunctions::ShapingFunctions() : BeamShapingBasics()
{
}

void ShapingFunctions::FresnelTransform(ComplexBeam * inputbeam, ComplexBeam * outputbeam, double z)
{
...

	double x,y;
	// Plot to Array
	complex&lt;double&gt; complexvalue;
	int ArrayPosition;
	for (int iy=0; iy &lt; size.height(); iy++) 
	{			
		y = BeamShapingBasics::PositionRealY(iy);
...
}
</code></pre>
<pre><code class="language-cpp">double BeamShapingBasics::PositionRealY(const int iy)
{
	return (iy - m_CenterPosition.y()) * m_PixelSize.height();		
}
</code></pre>
<p>In der letzten Zeile, beim Aufruf von PositionRealY stürzt das Programm ab mit Zugriffsverletzung. Der Werte von iy ist ok, aber die Funktion wird nicht erreicht.</p>
<p>Was soll das ?</p>
<p>EDIT:<br />
Die Klasse die die Funktion enthält war nicht oder nicht vollständig konstruiert:</p>
<pre><code class="language-cpp">InternalPhaseObject-&gt;ComplexBeam.FresnelTransform(...)
</code></pre>
<p>Nachdem dieser Pointer auf ein gültiges Object gesetzt war geht es auch.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/231837/gelöst-zugriffsverletzung-bei-funktionsaufruf</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 16:47:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/231837.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Jan 2009 16:17:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [gelöst] Zugriffsverletzung bei Funktionsaufruf? on Thu, 15 Jan 2009 16:25:30 GMT]]></title><description><![CDATA[<p>Ich habe folgenden Code</p>
<pre><code class="language-cpp">ShapingFunctions::ShapingFunctions() : BeamShapingBasics()
{
}

void ShapingFunctions::FresnelTransform(ComplexBeam * inputbeam, ComplexBeam * outputbeam, double z)
{
...

	double x,y;
	// Plot to Array
	complex&lt;double&gt; complexvalue;
	int ArrayPosition;
	for (int iy=0; iy &lt; size.height(); iy++) 
	{			
		y = BeamShapingBasics::PositionRealY(iy);
...
}
</code></pre>
<pre><code class="language-cpp">double BeamShapingBasics::PositionRealY(const int iy)
{
	return (iy - m_CenterPosition.y()) * m_PixelSize.height();		
}
</code></pre>
<p>In der letzten Zeile, beim Aufruf von PositionRealY stürzt das Programm ab mit Zugriffsverletzung. Der Werte von iy ist ok, aber die Funktion wird nicht erreicht.</p>
<p>Was soll das ?</p>
<p>EDIT:<br />
Die Klasse die die Funktion enthält war nicht oder nicht vollständig konstruiert:</p>
<pre><code class="language-cpp">InternalPhaseObject-&gt;ComplexBeam.FresnelTransform(...)
</code></pre>
<p>Nachdem dieser Pointer auf ein gültiges Object gesetzt war geht es auch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1646342</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1646342</guid><dc:creator><![CDATA[pospiech]]></dc:creator><pubDate>Thu, 15 Jan 2009 16:25:30 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Zugriffsverletzung bei Funktionsaufruf? on Thu, 15 Jan 2009 16:25:32 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">size.height();
</code></pre>
<p>Wird diese Funktion korrekt ausgeführt? Das ist ja das einzige in der Schleife, was nicht gehen könnte.</p>
<p>Wo genau tritt die Zugriffsverletzung auf? Exakt vor dem Funktionsaufruf? Wird <code>iy</code> noch richtig inkrementiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1646347</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1646347</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 15 Jan 2009 16:25:32 GMT</pubDate></item></channel></rss>