这里是modern c++开源社区,致力于现代C++促进企业生产力与效率 C++ 工作机会 - Q2 2019 C++分布式基础设施技术分享报名开始了!! purecpp社区网站由纯C++打造,这就是真正意义上的purecpp!
purecpp
搭建VS2017 Linux CMake开发环境
# 本文已经获得作者[方方](https://www.zhihu.com/people/fang-fang-40-71/columns)的转载授权,也欢迎大家去[原文地址](https://zhuanlan.zhihu.com/p/62036402)阅读。 # 需要安装的软件 ## 1. VS2017 本文用来测试的版本是VS2017.15.9.8 ...
purecpp
modern c++设计模式系列(一)
# 从一个玩具例子开始 假设我们现在有一个动物的继...
purecpp
C++20 Modules
## 1. 为什么我们需要C++ Modules? 实际上,关于C++ M...
purecpp
从抽象谈面向对象与泛型编程 part.2 - 泛型编程的抽象
1. 前言 上一篇浅讨了OOP中抽象常用的方法,而这一篇的内容,主要是对《数学与泛型编程》,后文简称MGP,中部分内容的小结。这本著作有相当多的篇幅,是对数论基础的讨论。其中的一条主线,就是最大公约数(GCD)算法的探讨。GCD是数论的基础,可以说绝大部分数论的定理都是基于GCD推导出来的,而整个数论的发展史就是一部推广GCD算法的历史。GCD算法推广的过程,也演绎出了很...
purecpp
从抽象谈面向对象与泛型编程 part.1
1. 前言 抽象是我们常用的思维过程。一系列事物通过大脑的提炼,归纳和综合,让我们可以从无序中找出有序,从一个个具体的问题中找出通用的解决方法。编程中的抽象是从面相对象的程序设计,后文称为OOP,开始才有了比较完善的语言支持。如今软件复杂程度越来越高,OOP一直都是解决复杂软件设计的重要方法。使用OOP可以屏蔽各个任务具体的细节,抽象出一个简化而统一的流程...
purecpp
解耦利器function message bus
需求1 能把模版函数和一个key注册起来以便后面使用,能把参数不同的函数和一个key注册起来以便后面使用。 c++中没有这样的一个容器可以存放模版函数和参数类型不同的函数。 需求2 对象A和对象B相互调用,耦合性很强,如何消除这种耦合性; 对象A和对象B没有任何关系,但A希望用B里面的方法,但二者又不适合直接关联起来。 ...
purecpp
推荐下本人的无栈协程库librf
https://github.com/tearshark/librf librf librf - 协程库 librf是一个基于C++ Coroutines提案 ‘Stackless Resumable Functions’编写的非对称stackless协程库。 目前仅支持: Windows (使用2017编译)(由于使...
purecpp
一个更好的自动注册工厂
在几年前我介绍过一种C++11实现的自动注册工厂,这是工厂模式的一种优雅的实现。在这里我们需要明确一个概念就是工厂模式,它是如何优雅地解决一个产品族的创建问题。所谓产品族就是一个继承体系的产品,比如有一个产品Message,它是一个基类,有很多Message是从它派生而来的,比如有Message1,Message...
purecpp
tensorflow variant源码分析
tensorflow variant基本语义 通过分析tf.variant的源码可以知道它其实是一个any语义,即这个类型可以被任意类型赋值,它的主要目的就是做彻底的类型擦除。 这个名字取得有迷惑性,它和标准库和boost库中的variant语义是不一样的,而是和c++17中的std::any对应的。 tf.variant用法 ...
purecpp
variant原理和应用
variant原理和应用 variant语义 variant是一个泛化的、类型安全的union。可以保存类型不同的对象,它的特点是多类型单值。 基本用法 以c++17中的variant为例(boost中的variant和标准库的用法几乎一样),我们定义一个这种的variant: std::varian...
Absolutely

purecpp

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


这里有创新的idea,这里有最酷的modern c++代码,这里有很棒的modern c++开源项目。purecpp社区邮箱 purecpp@163.com
友情链接