<?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[funktion außerhalb einer klasse aufrufen]]></title><description><![CDATA[<p>hallo, ich möchte innerhalb der operation einer klasse eine funktion aufrufen,<br />
die in keiner klasse definiert ist. Genaugenommen ist die funktion in einer library.<br />
konkret geht es dabei um sockets. Code-Schnippsel:</p>
<pre><code>Client::Client(){
    cout &lt;&lt; &quot;Client is da *wink*&quot;;
    server = socket(AF_INET, SOCK_STREAM, 0);
    if (server == -1){
        perror(&quot;socket() failed&quot;);
        return;
    }
}
</code></pre>
<p>der fehler:</p>
<pre><code>D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: `AF_INET' undeclared (first use this function)
D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: (Each undeclared identifier is reported only once for each function it appears in.)
D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: `SOCK_STREAM' undeclared (first use this function)
D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: `socket' undeclared (first use this function)
D:\Programme\CodeBlocks\bin\..\lib\gcc\mingw32\3.4.4\..\..\..\..\include\WinSock.h:450: error: `SOCKET socket(int, int, int)' used prior to declaration
:: === Build finished: 5 errors, 0 warnings ===
</code></pre>
<p>was muss ich hier anders machen??</p>
<p>achso includes etc passiern in einem header:</p>
<pre><code>#include &quot;Server.h&quot;
#include &quot;Client.h&quot;
#include &lt;sys/types.h&gt;
#include &lt;WinSock.h&gt;
#include &lt;windows.h&gt;
#include &lt;stdio.h&gt;
#include &lt;cstdio&gt;
#include &lt;iostream&gt;
#include &lt;winsock.h&gt;
void initWinsock();

int initWinSock(){
    WSADATA wsa;
    if (WSAStartup(MAKEWORD(1, 1), &amp;wsa))
    {
        printf(&quot;WSAStartup() failed, %lu\n&quot;, (unsigned long)GetLastError());
        return EXIT_FAILURE;
    }
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/182496/funktion-außerhalb-einer-klasse-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 21:25:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/182496.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 25 May 2007 14:40:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to funktion außerhalb einer klasse aufrufen on Fri, 25 May 2007 14:40:01 GMT]]></title><description><![CDATA[<p>hallo, ich möchte innerhalb der operation einer klasse eine funktion aufrufen,<br />
die in keiner klasse definiert ist. Genaugenommen ist die funktion in einer library.<br />
konkret geht es dabei um sockets. Code-Schnippsel:</p>
<pre><code>Client::Client(){
    cout &lt;&lt; &quot;Client is da *wink*&quot;;
    server = socket(AF_INET, SOCK_STREAM, 0);
    if (server == -1){
        perror(&quot;socket() failed&quot;);
        return;
    }
}
</code></pre>
<p>der fehler:</p>
<pre><code>D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: `AF_INET' undeclared (first use this function)
D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: (Each undeclared identifier is reported only once for each function it appears in.)
D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: `SOCK_STREAM' undeclared (first use this function)
D:\Eigene Dateien\codeblocks\Socket\Client.h:21: error: `socket' undeclared (first use this function)
D:\Programme\CodeBlocks\bin\..\lib\gcc\mingw32\3.4.4\..\..\..\..\include\WinSock.h:450: error: `SOCKET socket(int, int, int)' used prior to declaration
:: === Build finished: 5 errors, 0 warnings ===
</code></pre>
<p>was muss ich hier anders machen??</p>
<p>achso includes etc passiern in einem header:</p>
<pre><code>#include &quot;Server.h&quot;
#include &quot;Client.h&quot;
#include &lt;sys/types.h&gt;
#include &lt;WinSock.h&gt;
#include &lt;windows.h&gt;
#include &lt;stdio.h&gt;
#include &lt;cstdio&gt;
#include &lt;iostream&gt;
#include &lt;winsock.h&gt;
void initWinsock();

int initWinSock(){
    WSADATA wsa;
    if (WSAStartup(MAKEWORD(1, 1), &amp;wsa))
    {
        printf(&quot;WSAStartup() failed, %lu\n&quot;, (unsigned long)GetLastError());
        return EXIT_FAILURE;
    }
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1292280</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1292280</guid><dc:creator><![CDATA[DaHunger]]></dc:creator><pubDate>Fri, 25 May 2007 14:40:01 GMT</pubDate></item><item><title><![CDATA[Reply to funktion außerhalb einer klasse aufrufen on Fri, 25 May 2007 14:54:28 GMT]]></title><description><![CDATA[<p>Und der Header der die Includes beinhaltet wird auch in dem Codestück includet?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1292283</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1292283</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Fri, 25 May 2007 14:54:28 GMT</pubDate></item><item><title><![CDATA[Reply to funktion außerhalb einer klasse aufrufen on Fri, 25 May 2007 14:57:37 GMT]]></title><description><![CDATA[<p>nein... ok danke ich dachte wenn sie im einen includet sind, sind sie auch in dem verfügbar was dort includet wird... is wohl nich so...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1292285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1292285</guid><dc:creator><![CDATA[DaHunger]]></dc:creator><pubDate>Fri, 25 May 2007 14:57:37 GMT</pubDate></item></channel></rss>