我知道有十亿类似的话题,但没有我在任何一个看到的建议,帮助我解决了这个预期的“”或“...” ...这是保存为一个文件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:错误:预期‘’或‘...’前‘>’令牌”,其中第18行原来是“void giveMaps(地图主持人,地图媒体>);”
我已经试过宣布两个映射为const,与地图内的所有串一起,但到目前为止,我已经没有什么。我敢肯定它是简单的东西,我只需要另一双眼睛看看吧......
什么是'媒体'在那里的额外一个? – chris
放置“using namespace std;”在头文件中是非常非常糟糕的做法,这将使任何必须使用头文件的人永远诅咒你。如果你想在.cpp文件中使用它,请继续,虽然这不是一个很好的做法。把它在你的头文件,在另一方面,这意味着任何人,包括你的头文件将有带入全局命名空间std命名空间的一切,他们是否愿意与否(他们可能没有)。另外,如果Handler将被用作基类,一定要让析构函数为虚拟。 – George