g++ main.cpp -o services を実行するとOK
これをすべて1つのクラスで行うと、.cppは正常に動作しますが、別のクラスに分割するたびにエラーが発生し続け、その理由が本当にわかりません。コードを別のファイルに移動して含めただけですそれ。
私は投げられます:
[Admin@shadowrealm ircservices]$ g++ main.cpp -o services
In file included from services.cpp:1:0,
from main.cpp:4:
services.h:23:2: error: âSOCKETâ does not name a type
services.h:24:2: error: âHOSTENTâ does not name a type
services.h:25:2: error: âSOCKADDR_INâ does not name a type
services.h:
#ifndef SERVICES_H
#define SERVICES_H
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <stdarg.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
class services {
public:
services(); //perhaps init something important here, dunno
~services();
int connect();
private:
SOCKET sock;
HOSTENT* host;
SOCKADDR_IN address;
};
#endif /* SERVICES_H */
サービス.cpp:
#include "services.h"
services::services()
{
//do nothing
}
services::~services()
{
//TODO: incase crash, log why.
}
int services::connect()
{
return 0;
}