这里是modern c++开源社区,致力于现代C++促进企业生产力与效率 这里有创新的idea,这里有最酷的modern c++代码,这里有很棒的modern c++开源项目! [重磅]C++20基础库--yaLanTingLibs兰亭集库开源了,帮助开发者快速构建高性能C++应用 purecpp社区网站由纯C++打造,这就是真正意义上的purecpp!
purecpp
当ADL 遇上隐式转换
最近在做iguana.struct_pb 动态反射功能的时候遇到一个奇怪的问题。 ```cpp struct person { std::string na...
purecpp
性能更好的protobuf--struct_pb
最近iguana(https://github.com/qicosmos/iguana) 增加了C++17 版本的序列化/反序列化protobuf 格式的功能,用法和json、xml类似,都是两行代码完成序列化反序列化。更重要的是性能比google的protobuf 更好,在benchmark部分会给出测试数据。 struct_pb 让我们以纯C++的方式去定义并序列化/反序列化proto...
purecpp
cinatra中如何使用metric来监控系统各种指标
# metric 介绍 m...
purecpp
一种编译期检查是否存在重复类型的新方法
前文介绍iguana json 反序列化variant时,如果variant中存在重复类型则在编译期检查是否存在重复类型,但是之前的检查重复类型的写法不对,只检查了第一个类型,应该检查每一个类型,这是社区的一个同学发现的。 ```cpp template struct has_same_variant_type : std::false_type {}; ...
purecpp
iguana 一个很酷的新feature--部分解析json
如果一个很大的json字符串,然后用户只希望解析其中的一个字段,一般情况下需要遍历所有字符串全量解析所有字段,这样就效率很低了。如果能部分解析json字段就可以避免全量解析了从而能获得更好的性能。 iguana(https://github.com/qicosmos/iguana) 已经增加了支持部分解析json的feature,比如这样一个json对象: ```cpp struct ...
purecpp
元编程:在编译期根据成员变量地址获取其名称
最近根据iguana(https://github.com/qicosmos/iguana) 的一个需求...
purecpp
std::variant 用起来很爽,但......
试想,你使用std::variant 擦除了类型,然后将这个variant 对象序列化成json 字符串了,这挺爽的,想序列化A,B,C中任意一个类型只要赋值给variant 就行,代码保持不变,不用再写一份,这用起来确实挺爽。但是,从json 字符串反序列化到variant的时候怎么办,你怎么知道这个json 字符串倒是A还是B还是C呢? 然而,这就是社区的同学对igu...
purecpp
单例模式实现方式比较
# 单例模式实现方式比较 --- ## 单例设计模...
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 ...
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


友情链接