看起来非常好的C++代码会导致错误

C++ code that look perfectly fine causes error

本文关键字:错误 代码 非常好 C++ 看起来      更新时间:2023-10-16

我在Visual studio Professional 2013上运行了这段代码,它有效,但在Visual studio Express 2013上不起作用。

#include "cli_tcp.h"

cli_tcp::cli_tcp()
// CLIENT TCP PROGRAM
// Revised and tidied up by
// J.W. Atwood
// 1999 June 30

char* getmessage(char *);

/* send and receive codes between client and server */
/* This is your basic WINSOCK shell */
#pragma comment( linker, "/defaultlib:ws2_32.lib" )
#include <winsock2.h>
#include <ws2tcpip.h>
#include <winsock.h>
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <windows.h>

错误1错误C2144:语法错误:"char"前面应加上";"
错误2错误C2761:"{ctor}":不允许成员函数重新声明
3 IntelliSense:应为"{"

我没有发布整个代码,因为它无关紧要。唯一一行似乎是错误的是:char*getmessage(char*);

当您声明"cli_tcp::cli_tcp()"时,您根本没有做您应该做的事情。编译器希望您为类的构造函数提供实现,但您没有提供任何内容。

这个

cli_tcp::cli_tcp()

应该是

cli_tcp::cli_tcp() { /*code*/ }

否则它在任何地方都不起作用。