我真的很服同事的耐心,他们最经典的做法就是解析消息这种操作会写无数遍。比方说:
然后构造json也这么玩:
我写这两个函数的时候写完第一个复制黏贴第二个,然后把foo改成bar就行了,这两个函数拿去查重查重率能破95%,就这种写法他们能不厌其烦的复制黏贴十几二十遍,我真的要疯。
cJSON *method = cJSON_GetObjectItem(json, “method”);
if (method == “foo”)
{
cJSON* ip = cJSON_GetObjectItem(json, “ip”);
cJSON* id = cJSON_GetObjectItem(json, “id”);
foo(ip, id);
}
else if (method == “bar”)
{
cJSON* ip = cJSON_GetObjectItem(json, “ip”);
cJSON* id = cJSON_GetObjectItem(json, “id”);
bar(ip, id);
}
// 更多的 else if
然后构造json也这么玩:
int sendFoo(std::string ip, std::string ip)
{
cJSON *root =
cJSON_CreateObject();
cJSON_AddItemToObject(root, “method”, cJSON_CreateObject(“foo”));
cJSON_AddItemToObject(root, “ip”, cJSON_CreateObject(ip.c_str()));
cJSON_AddItemToObject(root, “id”, cJSON_CreateObject(ip.c_str()));
send(cJSON_Print(root));
}
int sendBar(std::string ip, std::string ip)
{
cJSON *root =
cJSON_CreateObject();
cJSON_AddItemToObject(root, “method”, cJSON_CreateObject(“bar”));
cJSON_AddItemToObject(root, “ip”, cJSON_CreateObject(ip.c_str()));
cJSON_AddItemToObject(root, “id”, cJSON_CreateObject(ip.c_str()));
send(cJSON_Print(root));
}
我写这两个函数的时候写完第一个复制黏贴第二个,然后把foo改成bar就行了,这两个函数拿去查重查重率能破95%,就这种写法他们能不厌其烦的复制黏贴十几二十遍,我真的要疯。