zoukankan      html  css  js  c++  java
  • boost库的使用

    我的经验:
    在强调运行效率的场合:
    shared_ptr/weak_ptr很好用,尤其是weak_ptr这个能够判断一个对象的生命周期的玩意,可以简化和扩展很多设计。
    unordered系列的容器也很不错。
    thread+function+bind是异步编程的利器。
    signal:这个因为个人比较喜事件驱动这种模型,没用过,不太清楚,但这种回调机制貌似使用场景也很广。
    python:结合python很方便,适合快速开发的场合。

    在强调开发效率的场合:
    正则表达式,这个不用说了,字符串处理的利器。
    状态机,可以用很少的代码写出很规范的状态机,还是层次性的。很不错,我很早以前受这个库的启发实现过一个类似的状态机库,用来解析通信协议的,写的代码比别人少,运行效率居然还比其他人写的手工解析的高。
    Program Options: 解析程序参数和配置文件什么的,很方便。

    一些我个人感觉不是很好的库:
    asio,我认为有过度设计之嫌,一般的应用场景很好用,但很难扩展。比如我曾经想在这个库的基础上弄个解析链路层协议的玩意出来,结果代码死活没看懂。当然也可能是我水平太差了。
    spirit,炫耀技术的玩具,可以直接用c++直接写BNF,但生成的程序体积巨大,速度巨慢。意义在于展现模板元编程能带来多强大的表达能力,但其他方面意义真心不大。
    lambda,和上面差不多,这玩意在c++11以后完全不需要了。
  • 相关阅读:
    安装和配置nginx
    tomcat 生产发布脚本
    nginx 静态页面访问
    redis 搭建主从
    redis 安装
    perl 操作redis
    mysql 用户除了root一般不建议本地登录
    mysql创建用户
    mysql 查看排序集
    perl 安装Cpan
  • 原文地址:https://www.cnblogs.com/darknoll/p/4660407.html
Copyright © 2011-2022 走看看