我知道有十亿个类似的主题,但我在其中任何一个中看到的建议都没有帮助我解决这个问题......这是一个保存为header.h的文件。
#include <errno.h>
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <map>
using namespace std;
class Handler {
public:
Handler();
~Handler();
bool handle(int client);
void giveMaps(map<string, string> host, map<string,string> media>);
private:
map<string, string> hosts;
map<string, string> mediaLookup;
char buf_[1600];
char* getCurrentDate();
};
我的错误是“handler.h:18:错误:预期','或'...'在'&gt;'令牌之前”,其中原文中的第18行是“void giveMaps”(地图主机,地图媒体&gt );“
我已经尝试将地图声明为const,以及地图中的所有字符串,但到目前为止我什么都没有。我很肯定这很简单,我只需要另外一双眼睛来看......
答案 0 :(得分:3)
末尾有一个额外的
>
void giveMaps(map<string, string> host, map<string,string> media>);
答案 1 :(得分:3)
还有一个>
。请删除(media
之后的声明中的第三个最后一个):
更新后的陈述应如下所示:
void giveMaps(map<string, string> host, map<string,string> media);
答案 2 :(得分:1)
除了给出的其他建议外,以下内容不正确:
#include <string.h>
你应该删除.h
所以你只需要:
#include <string>