
C++
allen_zhaozhencn
这个作者很懒,什么都没留下…
展开
-
C++开发者都应该使用的 10 个C++11特性
C++开发者都应该使用的 10 个C++11特性http://blog.jobbole.com/44015/转载 2013-07-27 13:11:08 · 377 阅读 · 0 评论 -
install gcc 4.8.5 and g++ 4.8.5 on ubuntu 16.04 LTS
install gcc 4.8.5 and g++ 4.8.5 on ubuntu 16.04 LTS1 add code below for update /etc/apt/sources.listdeb http://cz.archive.ubuntu.com/ubuntu xenial main universe2 install gcc-4.8sudo apt-get instal...原创 2018-12-28 15:46:48 · 3182 阅读 · 3 评论 -
mosquitto SSL配置
mosquitto.confport 8883cafile /home/ubuntu/ca/ca.crtcertfile /home/ubuntu/ca/server.crtkeyfile /home/ubuntu/ca/server.keyca directory: /home/ubuntu/cacaopenssl genrsa -des3 -...原创 2018-08-07 20:24:56 · 2670 阅读 · 1 评论 -
关于epoll几点备注
ET(Edge Trigger) : 当且仅当状态变化时才触发(必须设置non-blocking模式) EPOLLIN: 接收缓冲区: 空->不空 连接后立即注册读策略:只要可读,就一直读,直到返回0,或者 errno = EAGAINEPOLLOUT: 发送缓冲区: 满 -> 不满 (注:将socket加入epoll监控列表时,将触发一次) 连接后立即注册 或 按需注册写...原创 2018-04-09 17:28:38 · 143 阅读 · 0 评论 -
两组概念的理解: 阻塞&非阻塞 VS 同步&异步
阻塞&非阻塞这一组概念并偏向于系统底层的实现,常与OS进程调度相关。 以socket为例,在阻塞模式下线程A调用recv函数,若此时接收缓冲区有数据,则立即返回,否则将进入”阻塞状态“(主动释放CPU控制权,由OS CPU调度程序重新调度并运行其它进程),直到”等待条件”为真,再由OS将此进程调度并重新投入运行。非阻塞模式则另辟蹊径,无论有无数据均立即返回(有数据则返回数据,无数据则返回错...原创 2018-04-09 16:08:38 · 307 阅读 · 0 评论 -
RValue forward sample code
class data{public: data(int d) : d_(d) { }public: data& operator + (data& d) { cout this->d_ += d.d_; return *this; } const d原创 2016-04-01 10:48:12 · 267 阅读 · 0 评论 -
LValue RValue
LValue RValuehttps://msdn.microsoft.com/zh-cn/library/f90831hc.aspxAn lvalue refers to an object that persists beyond a single expression.You can think of an lvalue as an object that has a原创 2016-03-31 15:14:19 · 359 阅读 · 0 评论 -
C++ 与 c# 模块 之间相互调用
在项目中,遇到C++ 与 c#编写的模块之间的相互调用。分两种情况:1 c#模块使用C++模块的DLL(导出C API函数), 只需简单引用C++模块的 DLL即可。2 c++模块调用c#模块DLL时,则需要使用一个适配模块(adapter), 它提供两个作用:1 导出C API供c++模块调用; 2 加戴加载C#模块DLL,并通过.NET基础时库的函数,获得C#类或原创 2015-08-22 12:31:00 · 3443 阅读 · 0 评论 -
boost asio 库中通过socket获得远端的endpoint的参数(ip, port)
IP:std::string sClientIp = socket().remote_endpoint().address().to_string();port:unsigned short uiClientPort = socket().remote_endpoint().port();原创 2013-10-22 14:55:38 · 3667 阅读 · 0 评论 -
交叉编译pjsip2.2.1至android平台
1 设置NDK环境变量 export ANDROID_NDK_ROOT=/root/lib/android-ndk-r9d 2 配置android相关 编辑pjlib/include/pj/config_site.h文件内容如下: #define PJ_CONFIG_ANDROID 1 #include 3 生成makefile ./configure原创 2014-06-26 18:31:32 · 919 阅读 · 0 评论 -
boost asio库的注意事项
在使用asio时,对同一个socket不要同时发起多个相同的异步操作。但是可以对同一个socket同时发起多个不相同的异步操作。若socket 为p ,1 假定已经调用async_read, 在该操作完成之前,不要再次调用。 必须等操作完成后, 再发起另一个async_read。2 假定已经调用ayync_read, 在该操作完成之前或完成之后,均可以发起as原创 2013-11-27 18:25:29 · 693 阅读 · 0 评论 -
MPC 生成make文件时,在mpc脚本指定的库的顺序与生成的makefile文件中的顺序刚好相反
MPC 生成make文件时,在mpc脚本指定的库的顺序与生成的makefile文件中的顺序刚好相反(ACE-6.2.2), 有如下: libs += m libs += a libs += b libs += c生成的makefile文件中的处理顺序: -l"c$(LIBSUFFIX)" -l"b$(LIBSUFFIX)" -l"a$(LIBSUFFIX原创 2013-11-01 14:51:32 · 589 阅读 · 0 评论