C++
文章平均质量分 83
樊的零食
这个作者很懒,什么都没留下…
展开
-
C++ 模板浅谈
引言与概述C++模板机制允许在定义类,函数,类型别名的时候将类型或值当作参数,这样定义的类和函数在运行时间和空间效率上并不逊色于手工打造的非通用的代码。模板提供的代码是类型安全的。模板是一种编译时期的机制,与手工编写的代码相比,并不会产生任何运行期开销。对模板来说,只有当一个成员函数被使用时才会被生成代码。一个通用的组件应该从一个或多个具体实例泛化而来,而不是简单的从第一原理直接而来。 即我们可以先写一个具体的函数或者类,然后改成泛化类型。模板简介一个简单的模板template <ty原创 2021-10-22 21:01:30 · 173 阅读 · 0 评论 -
对于C++的思考
前言本文是Bjarne Stroustrup的HOPL4论文 笔记及拓展(目录) 的起始篇。C++的理念C++被设计出来到底是为了回答什么样的问题呢?如何直接操纵硬件?同时支持高效,高级的抽象?C++在1980年代仅仅是一个基于C和Simula语言功能的组合,经过多年的发展,C++与其他编程语言的决定性区别有两方面:语言结构到硬件设备的直接映射零开销抽象关于零开销抽象是这样被描述的:你不用的东西,你就不需要付出代价(也称为“没有分布式脂肪”)你使用的东西,你手动写代码也不会更原创 2021-10-17 16:39:10 · 130 阅读 · 0 评论 -
C++——lambda表达式
介绍lambda表达式是一种局部类类型,它含有一个构造函数,和一个const成员函数operator()()。lambda表达式除了能做参数外,还能用于初始化一个声明为auto或者std::function<R(LA)>的变量。R是lambda的返回类型,LA是它的类型参数列表。组成部件一个可能为空的捕获列表,指明定义环境中哪些名字能够被用在lambda表达式中,以及这些名字是被拷贝还是引用。捕获列表位于[]中。 补充: 静态变量不能也不需要被捕获。一个可选的参数列表。指明所需要的参原创 2021-05-17 09:52:59 · 1504 阅读 · 0 评论