<?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[Eigene Funktion]]></title><description><![CDATA[<p>Hallo C++ Gemeinde,</p>
<p>in einer Ereignisfunktion (Button1Click(TObject *Sender)) möchte ich eine selbst geschriebene Funktion aufrufen. Zur Zeit weiß ich nicht, wie ich an diese Funktion 3 AnsiString Variable übergeben soll.</p>
<p>Code etwa so :</p>
<p>void __fastcall Button1Click(TObject *Sender)<br />
{<br />
AnsiString a,b,c;<br />
LadeSql(a,b,c);</p>
<p>}</p>
<p>void __fastcall LadeSql(TObject *Sender,????????)<br />
{<br />
a = &quot;23.05.2005 6:00:00&quot;;<br />
b = &quot;24.05.2005 6:00:00&quot;;<br />
c = &quot;Select * from ... where StartDatum = '&quot;+a+&quot;'and EndDatum = '&quot;+b+&quot;'&quot;;<br />
}</p>
<p>Bitte um Vergebung, wenn das mglw. eine triviale Frage ist.</p>
<p>Gruß</p>
<p>Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/206449/eigene-funktion</link><generator>RSS for Node</generator><lastBuildDate>Thu, 20 Aug 2026 00:43:22 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/206449.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 25 Feb 2008 12:34:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 12:34:47 GMT]]></title><description><![CDATA[<p>Hallo C++ Gemeinde,</p>
<p>in einer Ereignisfunktion (Button1Click(TObject *Sender)) möchte ich eine selbst geschriebene Funktion aufrufen. Zur Zeit weiß ich nicht, wie ich an diese Funktion 3 AnsiString Variable übergeben soll.</p>
<p>Code etwa so :</p>
<p>void __fastcall Button1Click(TObject *Sender)<br />
{<br />
AnsiString a,b,c;<br />
LadeSql(a,b,c);</p>
<p>}</p>
<p>void __fastcall LadeSql(TObject *Sender,????????)<br />
{<br />
a = &quot;23.05.2005 6:00:00&quot;;<br />
b = &quot;24.05.2005 6:00:00&quot;;<br />
c = &quot;Select * from ... where StartDatum = '&quot;+a+&quot;'and EndDatum = '&quot;+b+&quot;'&quot;;<br />
}</p>
<p>Bitte um Vergebung, wenn das mglw. eine triviale Frage ist.</p>
<p>Gruß</p>
<p>Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462411</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462411</guid><dc:creator><![CDATA[chvdsschule]]></dc:creator><pubDate>Mon, 25 Feb 2008 12:34:47 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 12:38:19 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void LadeSql(AnsiString a,AnsiString b,AnsiString c)
{
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1462415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462415</guid><dc:creator><![CDATA[gnumn]]></dc:creator><pubDate>Mon, 25 Feb 2008 12:38:19 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 12:45:08 GMT]]></title><description><![CDATA[<p>Besser,</p>
<pre><code class="language-cpp">void LadeSql(const AnsiString&amp; a, const AnsiString&amp; b, const AnsiString&amp; c)
{
}
</code></pre>
<p>Konstante Referenzen vermeiden unnötige Kopien.<br />
<a href="http://tutorial.schornboeck.net/funktionen2.htm" rel="nofollow">http://tutorial.schornboeck.net/funktionen2.htm</a><br />
<a href="http://tutorial.schornboeck.net/referenzen.htm" rel="nofollow">http://tutorial.schornboeck.net/referenzen.htm</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462418</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462418</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 25 Feb 2008 12:45:08 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 13:09:37 GMT]]></title><description><![CDATA[<p>Hallo gnumn,</p>
<p>danke für Deine Hilfe. Ich hab das jetzt so gemacht und erhalte nun :</p>
<p>[ILINK32 Fehler] Error: Nicht auflösbares externes 'TForm1::LadeSql(System::AnsiString, System::AnsiString, System::AnsiString)' referenziert von E:\PROJEKTE\START\DEBUG\UNIT1.OBJ</p>
<p>Was kann ich tun ?</p>
<p>Gruß</p>
<p>Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462442</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462442</guid><dc:creator><![CDATA[chvdsschule]]></dc:creator><pubDate>Mon, 25 Feb 2008 13:09:37 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 13:16:18 GMT]]></title><description><![CDATA[<p>Ich würde mal sagen, hier passen Deklaration (im Header) und Definition (in der cpp) nicht zusammen. Evtl. stimmen die Parameterlisten nicht überein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462452</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462452</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 25 Feb 2008 13:16:18 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 13:24:31 GMT]]></title><description><![CDATA[<p>Hallo Braunstein,</p>
<p>Danke für Deine Antwort. Ja, das ist sicher richtig. Ich hatte die Funktionsdeklaration von LadeSql() im Abschnitt public der Klassendefinition von TForm1 untergebracht.</p>
<p>Nun steht void LadeSql(....) vor der Klassendefinition und der Linker Fehler ist weg. Leider wird die 1. Variable (a) zwar innerhalb der Funktion LadeSql mit dem Sql-String gefüllt, nach dem Rücksprung ist in a aber nichts enthalten.</p>
<p>Ich probiere nun mal Deinen Vorschlag mit der const - Variante.</p>
<p>Gruß</p>
<p>Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462458</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462458</guid><dc:creator><![CDATA[chvdsschule]]></dc:creator><pubDate>Mon, 25 Feb 2008 13:24:31 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 13:28:49 GMT]]></title><description><![CDATA[<p>das liegt daran, das du nur kopien übergibst. Diese übergebenen AnsiStrings werden wie lokale Parameter behandelt. du hast zwei Möglichkeiten:<br />
- du deklarierst diese Ansistrings global (in deiner *.h) (nicht ganz sauber)<br />
dann musst du sie nicht übergeben, kannst sie in deiner funktion aber benutzen<br />
- oder du übergibst die Adressen der Variablen (Call by Referenz)</p>
<p>mfg stephan</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462463</guid><dc:creator><![CDATA[menel]]></dc:creator><pubDate>Mon, 25 Feb 2008 13:28:49 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 13:48:59 GMT]]></title><description><![CDATA[<p>Hallo Braunstein und menel</p>
<p>nochmal Dank für Eure Hilfe. Jetzt läuft es. Habe void LadeSql(...) zu AnsiString LadeSql(...) umdefiniert und in LadeSql eine lokale AnsiString Variable angelegt. Jetzt klappt es auch mit der Rückgabe des Strings mit &quot;eingemergtem&quot; Start und Ende Datum.</p>
<p>Gruß</p>
<p>Christian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462480</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462480</guid><dc:creator><![CDATA[chvdsschule]]></dc:creator><pubDate>Mon, 25 Feb 2008 13:48:59 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 13:50:56 GMT]]></title><description><![CDATA[<p>menel schrieb:</p>
<blockquote>
<p>- du deklarierst diese Ansistrings global (in deiner *.h) (nicht ganz sauber)</p>
</blockquote>
<p>Ganz und gar nicht sauber! Vergiß das besser schnell wieder.</p>
<p>Ich würde die Rückgabe eher im typischen Stil machen. Über den Rückgabeparameter...</p>
<p>[EDIT] zu langsam, ich sollte während des postens nicht telefonieren...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462482</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462482</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 25 Feb 2008 13:50:56 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 17:59:56 GMT]]></title><description><![CDATA[<p>Braunstein schrieb:</p>
<blockquote>
<pre><code class="language-cpp">void LadeSql(const AnsiString&amp; a, const AnsiString&amp; b, const AnsiString&amp; c)
{
}
</code></pre>
<p>Konstante Referenzen vermeiden unnötige Kopien.</p>
</blockquote>
<p>Mhh, ich habe bisher immer Zeiger dafür verwendet und mit Refrenzen eigentlich noch garnichts gemacht.<br />
<a href="http://tutorial.schornboeck.net/zeiger.htm" rel="nofollow">http://tutorial.schornboeck.net/zeiger.htm</a></p>
<p>Danke für den Hinweis, werde jetzt wohl das mal öfter einsetzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462701</guid><dc:creator><![CDATA[gnumn]]></dc:creator><pubDate>Mon, 25 Feb 2008 17:59:56 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 18:07:28 GMT]]></title><description><![CDATA[<p>Wollts gleichmal ausprobieren</p>
<p>statt<br />
MyFunc(AnsiString Filename, TListView *ListView)<br />
nun<br />
MyFunc(AnsiString &amp;Filename, TListView &amp;ListView)</p>
<p>Nun will er das man überall<br />
ListView-&gt;Items-&gt;Count<br />
in<br />
ListView.Items-&gt;Count<br />
abändert.</p>
<p>Begründung? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462711</guid><dc:creator><![CDATA[gnumm]]></dc:creator><pubDate>Mon, 25 Feb 2008 18:07:28 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Tue, 26 Feb 2008 08:22:03 GMT]]></title><description><![CDATA[<p>Listview ist ein Zeiger. Also musst du den auch weiterhin so übergeben. Konstante Referenzen machen nur bei Nichtzeigerobjekten Sinn. Also</p>
<pre><code class="language-cpp">MyFunc(const AnsiString&amp; Filename, TListView *ListView)
</code></pre>
<p>Die Compilermeldung ist auch logisch. Auf Member von Zeiger auf Structs/Klassen greift man über -&gt; beim Rest mit . zu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1462721</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462721</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 26 Feb 2008 08:22:03 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Funktion on Mon, 25 Feb 2008 18:25:58 GMT]]></title><description><![CDATA[<p>Stimmt. Alles klar <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/1462724</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1462724</guid><dc:creator><![CDATA[gumn]]></dc:creator><pubDate>Mon, 25 Feb 2008 18:25:58 GMT</pubDate></item></channel></rss>