我正在尝试构建一个redis克隆。我有一个处理Redis查询的类Query
。每个查询的起始单词都是redis中的命令,例如:GET foo
或SET foo 123
。在解析每个查询时,我想调用一个函数,该函数将根据起始字解析查询。
我已经从字符串创建了std::map<std::string, std::string(*)(std::string)>
指向函数的指针。
//So when I get a query like:
query = "GET foo";
//I extract get in a string query_type.
//And use this to do the required work on the query:
query_handler[query_type](query);
//This should call the function associated with "GET"
现在我的问题是这些功能应该在哪里?在类定义中?或者单独的命名空间?或者在其他地方?