- 博客(5)
- 收藏
- 关注
原创 C++编程之std::shared_ptr使用那些事
1. std::shared_ptr的作用与适用场合2. std::shared_ptr的使用注意事项3. 使用std::shared_ptr的基本原则3.1 建议使用std::shared_ptr的场合3.2 不建议使用std::shared_ptr的场合
2017-12-29 17:02:14 3886
原创 C++模板技术之method_thunk, 使用场景: C++中类成员函数作为回调函数
在使用libev的ev++.h中的接口时,看到一些很实用的技术,其中就有本篇要介绍的method_thunk(注: 本篇博客仅作为学习笔记)在以往,我们使用了某些基于C语言的库时,需要用到回调函数, 比如pthread库。如果要在C++中使用这些库来绑定我们的某个类的成员函数作为回调时,我们通常会使用诸如class Some{public: void doSomethi
2017-12-28 11:36:09 988
原创 C++实现一个简易的内存池分配器
闲来无事突发奇想写个简单的内存分配器, 考虑到C++ 中的new 操作符可以很轻易的分配内存, delete释放也很方便,但是如果使用C++编写单片机的代码,就不能这样轻易使用new/delete了。其实基于C++的强大,完全可以自己实现new/delete的重载,使用到自己的内存分配。 使用自己的内存分配的好处是,可以在某个已知可用的内存块上随意的进行小块内存的动态分配与释放,这样的话,不仅可...
2017-12-22 16:44:55 2250
原创 C++ 之and, and_eq, or, or_eq, xor, xor_eq, not, not_eq操作符
在C++11标准中,新增了一些关键字,这些关键字也是操作符:and, and_eq, or, or_eq, xor, xor_eq, not, not_eq, bitand, bitorand表示逻辑与操作, 是C++原有操作符 && 的等效替换bool success1 = execute_some_task();bool success2 = execute_another_task();i
2017-12-05 11:56:45 13624 2
原创 C++11新特性之operator "" xxx(const char *, size_t n)
从C++11开始,我们可以使用以下形式通过常量字符串构造自定义类型, 比如:class Person{public: Person(const std::string& name): _name(name){} std::string name() const { return _name; }private: std::string name;
2017-12-05 11:30:24 1881
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人