memcachde 与 c/c++ 应用
修改makefile,在LIBS里面加上-lmemcached,比如原来 gcc test.c,现在 gcc test.c -lmemcached。这个库就是libmemcached提供的。
然后添加#include<libmemcached/memcached.h>,这个文件也是libmemcached提供的。
主函数里面需要添加:
memcached_st *memc;
uint32_t flags;
memcached_return rc;
memcached_server_st *servers;
memc= memcached_create(NULL);
servers= memcached_servers_parse("127.0.0.1:12300");
memcached_server_push(memc, servers);
memcached_server_list_free(servers);
memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL, 0);
这就是初始化的全部代码,可以设置很多东西,不过我现在只要一个服务器,就看一句话:
servers= memcached_servers_parse("127.0.0.1:12300");
这就是指明要连接到位于127.0.0.1监听12300端口的memcached程序. 其他都不管。
最后用一段修改后的代码介绍两个函数,memcached_get和memcached_set,都可以man出来。
char * result_str; /*这个就是查询的结果*/
std::string query="要查询的数据名";
result_str= memcached_get(memc, query.c_str(), strlen(query.c_str()),
&result_str_length, &flags, &rc);
if (rc == MEMCACHED_SUCCESS)
{
printf("%s",result_str);
free(result_str); /*一定要free掉 memcached传回的数据*/
continue;
}
else if (rc == M
相关文档:
http://www.trendcaller.com/2009/05/hadoop-should-target-cllvm-not-java.html
Sunday, May 10, 2009
Hadoop should target C++/LLVM, not Java (because of watts)
< type="text/javascript">
digg_url="http://www.trendcaller.com/2009/05/hadoop-should-target-cllvm-not-java.html";
Over the years, ......
C/C++函数调用约定和函数名称修饰规则探讨
作者:星轨(oRbIt)
使用C/C++语言开发软件的程序员经常碰到这样的问题:有时候是程序编译没有问题,但是链接的时候总是报告函数不存在(经典的LNK
2001错误),有时候是程序编译和链接都没有错误,但是只要调用库中的函数就会出现堆栈异常。这些现象通常是出现在C和C ......
没有必要用一堆绕口的形容词来描述什么叫多态,只举出几个关键点。
设:gun为父类,shootgun和pistol为gun的子类。
Java:
class gun {
void shoot() {
  ......
用了三种方法...
#if 0
void StringTokenize(const std::string& strSrc, const std::string& strDelimit, std::vector<std::string>& vecSub)
{
if (strSrc.empty() || strDelimit.empty())
{
throw "tokenize: empty string\n";
......