这里是modern c++开源社区,致力于现代C++促进企业生产力与效率 这里有创新的idea,这里有最酷的modern c++代码,这里有很棒的modern c++开源项目! [重磅]C++20基础库--yaLanTingLibs兰亭集库开源了,帮助开发者快速构建高性能C++应用 purecpp社区网站由纯C++打造,这就是真正意义上的purecpp!
purecpp
std::variant 用起来很爽,但......
试想,你使用std::variant 擦除了类型,然后将这个variant 对象序列化成json 字符串了,这挺爽的,想序列化A,B,C中任意一个类型只要赋值给variant 就行,代码保持不变,不用再写一份,这用起来确实挺爽。但是,从json 字符串反序列化到variant的时候怎么办,你怎么知道这个json 字符串倒是A还是B还是C呢? 然而,这就是社区的同学对igu...
purecpp
单例看起来很美,但......
自从C++11 保证了静态局部变量的线程安全性之后,单例在C++11 里就简单得可怕: ```cpp class Singleton { public: Singleton(const S...
purecpp
C++20 template lambda的妙用
如果要把tuple 转换成tuple, std::optional> 如果使用C++17 去实现的话需要写一个辅助函数: ```cpp template ...
purecpp
利用ADL 规则扩展现有的库
ADL(argument-dependent lookup):实参依赖查找,是一组对函数调用表达式(包括对重载运算符的隐式函数调用)中的无限定(unqualified)的函数名进行查找的规则。 ```cpp NS::foo(a); //qualified foo(a); //unqualified ``` 如果加了域的限定就是qualified,比如加了命名空间或者类名去调用foo...
purecpp
模板不仅仅是模板,它还能解耦
在很多人眼里的模板就是用于泛型编程的场景,甚至有些讨厌它,可能很多人还不知道它还有另外一个妙用--解耦。 看这样一个场景: ```c++ class connection { public: void send() { //do business std::c...
purecpp
如何在main之前实现自动注册
一个常见的场景是在main之前把一些函数注册到map里,这些函数和某些key相关联。 ```c++ std::map> g_ma...
purecpp
巧用charconv
http 中经常需要将int 转换成16 进制的hex string,一种很常见的做法是利用stringstream将int 按照16 进制std::hex 输入到流里。 ```c++ int val = 42; std::ostringstream ss; ss << ...
purecpp
C++20 perfect caputre in lambda
C++11 里面就引入了完美转发的概念,通过完美转发,我们可以按照参数的实际类型转发参数。 ```c++ template void process(T &t) { std::cout << "lvaue\n"...
purecpp
模板元编程的精妙之--2/16进制字面量转换为编译期字符串
最近看asio 1.27 增加了了一个新特性buffer_literals,通过它可以快速定义一些常量asio buffer: ```c++ asio::const_buffer b5 = 0xaB_buf; ASIO...
purecpp
通过基类指针删除派生类指针, 为什么std::shared_ptr 不需要虚析构函数?
通过多态删除基类指针,要保证基类的析构函数是virtual的,看一个例子: ```c++ struct base { ~base() { std::cout << "b...
Absolutely

purecpp

一个很酷的modern c++开源社区


[社区开源项目列表,点击前往]


purecpp社区自2015年创办以来,以“Newer is Better”为理念,相信新技术可以改变世界,一直致力于现代C++研究、应用和技术创新,期望通过现代C++的技术创新来提高企业生产力和效率。


社区坚持只发表原创技术文章,已经累计发表了一千多篇原创C++技术文章;


组织了十几场的C++沙龙和C++大会,有力地促进了国内外C++开发者之间的技术交流;


开源了十几个现代C++项目,被近百家公司所使用,有力地推动了现代C++在企业中的应用。


期待更多的C++爱好者能参与到社区C++社区的建设中来,一起为现代C++开源项目添砖加瓦,一起完善C++基础设施和生态圈。


微信公众号:purecpp, 社区邮箱: purecpp@163.com


友情链接