CS106L Standard C++ Programming (施工中)

news/2026/1/22 13:32:59/文章来源:https://www.cnblogs.com/cqbzlzh/p/19501369

philosophies of C++ design

  1. 程序员拥有完全的控制权,并需要对此负责
  2. 在代码中直接表达思想和意图
  3. 尽可能在编译时强制执行安全性
  4. 不浪费空间和时间
  5. 将杂乱的特性模块化
  6. 向下兼容

stream

std::ostringstream 定义一个写缓冲区,采用 << 从缓存区指针处写入字符串覆盖

std::istringstream 定义一个读缓存区,采用 >> 依据右变量的类型,从缓冲区指针开始读入并进行类型转换。更具体地说,指针会一直读取并向后移动直到遇到空白或制表符,然后指针重新指向空白或制表符的前一个位置。下一次进行缓存区读时,指针会跳过所有空白和制表符,直到下一个字符

事实上,std::istringstream是一种 std::istream,而 std::cin 是一个 std::istream类型的对象,std::cout同理

使用缓冲区而不是立即输出,避免了系统调用读写的昂贵开销,但 std::cerr是不使用缓存区直接输出

缓冲区的状态:Good/Fail/EOF/Bad bit,可通过一个缓冲区的成员函数进行访问 如.good()

当尝试读入的类型于缓存区中识别的类型不一致时,fail位会被设置为1,并且此后对该缓冲区的读入都会被冻结

modern C++ data type

类型别名 eg: using iter = std::vector <int>::iterator

auto 编译器从初值赋值自动推断类型 注意:用 constauto变量赋初值的时候不会有常量性

std::tuple类似 std::pair,用来表示多元组,通过 get<i>(x)访问多元组 x的第 i个元素,类似语法通过 set来设置元素的值

统一初始化:按照结构体中变量定义的顺序使用花括号进行初始化

STL

ez

template

C++ 使用 template 实现了类似泛型编程的功能

对于模板函数,可以使用 template <class T> 声明使用了类型为 T的参数

在编译的时候,编译器会对应不同的类型进行实例化,替换生成对应类型的函数;你也可以手动进行实例化 mymax<int>(114,514)加快编译速度

同样的,自定义的函数也可以作为模板函数的参数。注意在C++标准库中,部分模板函数只接受谓词函数,即返回布尔值的函数

lambda 函数:创建的是一个对象,但是表现得像一个轻量级函数,其声明如下

auto fun = [capture-clause](parameters)->return-value{//body};

编译器实际上会把它转化成一个类,由于这个类的名称未知,需要使用 auto

其中的 capture-clause 规定了该lambda 函数能够捕获的外部变量

class

使用构造函数和析构函数,可以定义一个类被创建和回收时的行为

操作符重载分为成员函数和非成员函数两种,前者在类中被定义,后者在类外被定义

部分操作符只能以其中一种形式进行重载,如我们重载std::cout<<,使得其能够输出我们自己定义的一个分数类,就只能采用非成员函数进行定义。在成员函数中,可以使用*this得到一个指向当前类的指针

操作符重载的基本原则是和基本类型规则保持一致,如定义分数类的+=时,为了和普通int a(a += 1) += 2;规则相匹配,运算符的返回值应该是一个对当前变量的引用,而非一个拷贝值

采用friend定义友元函数,使得一个位于类外部的函数能够访问类的私有变量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1200228.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2026年目前专业的RTO公司口碑排行榜单,RTO/活性炭箱/滤筒除尘器/旋风除尘器/沸石转轮+CO,RTO制造厂家排名

随着全球环保法规日益严格和“双碳”目标的持续推进,挥发性有机物(VOCs)治理已成为众多工业企业必须面对的课题。蓄热式热力焚烧炉(RTO)作为一种高效、稳定的末端治理技术,凭借其高热回收效率和对复杂废气的强适…

2026年目前专业的RTO公司口碑排行榜单,RTO/活性炭箱/滤筒除尘器/旋风除尘器/沸石转轮+CO,RTO制造厂家排名

随着全球环保法规日益严格和“双碳”目标的持续推进,挥发性有机物(VOCs)治理已成为众多工业企业必须面对的课题。蓄热式热力焚烧炉(RTO)作为一种高效、稳定的末端治理技术,凭借其高热回收效率和对复杂废气的强适…

Comsol 超表面偏振转换:探索介质半波片与 1/4 波片设计

Comsol超表面偏振转换。 介质半波片和1/4波片设计。 在光学领域&#xff0c;超表面以其独特的光学调控能力备受瞩目&#xff0c;而 Comsol 作为一款强大的多物理场仿真软件&#xff0c;为超表面的研究提供了有力工具。今天咱们就来聊聊 Comsol 中超表面偏振转换相关的介质半波…

2026 年 1 月工业酯类溶剂厂家推荐排行榜,正丙酯/乙酯/丁酯/醋酸丁酯/乙酸乙酯/丙二醇甲醚醋酸酯/碳酸二甲酯/精甲酯,高纯度环保溶剂源头优选

2026 年 1 月工业酯类溶剂厂家推荐排行榜:正丙酯/乙酯/丁酯/醋酸丁酯/乙酸乙酯/丙二醇甲醚醋酸酯/碳酸二甲酯/精甲酯,高纯度环保溶剂源头优选 在精细化工与高端制造业持续升级的背景下,工业酯类溶剂作为不可或缺的关…

英语_阅读_Smart apps_待读

Spend your holiday in a smart way with these apps!用这些应用以聪明的方式度过你的假期吧! Grammarly is great for checking spelling, grammar, punctuation and other kinds of mistakes.Grammarly 非常适合检查…

2025年本地市场贯入式砂浆检测仪供应商口碑排行榜单揭晓,混凝土裂缝综合检测仪/数显高强回弹仪/混凝土回弹仪检测仪销售厂家排行

随着我国建筑行业对工程质量与安全的要求日益严苛,作为结构强度检测关键环节的砂浆强度检测,其重要性愈发凸显。贯入式砂浆强度检测仪,以其操作便捷、对结构损伤小、检测效率高等特点,已成为施工现场和检测单位的常…

2026年当下靠谱的刀塔机工厂怎么选择,数控车床/4+4车铣/排刀机/四轴机/车铣复合/数控4+4,刀塔机品牌排行

随着新能源汽车、精密制造等产业的蓬勃发展,作为核心加工装备的刀塔机(动力刀塔车铣复合机床)市场需求持续攀升。尤其在汽配制造重镇佛山,企业对能够实现高效率、高精度、一次装夹完成多道工序的刀塔机需求尤为迫切…

用React+Three.js 做 3D Web版搭建三维交互场景:模型的可视化摆放与轻量交互 - 指南

用React+Three.js 做 3D Web版搭建三维交互场景:模型的可视化摆放与轻量交互 - 指南2026-01-22 13:24 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; ov…

三菱PLC FX3U与1PG定位模块控制松下伺服四轴案例:注释完整、结构清晰的伺服控制程序与M...

三菱4轴控制伺服案例&#xff0c;三菱PLC FX3U加三菱1PG定位模块控制4个松下伺服&#xff0c;有完整的注释&#xff0c;结构清晰明了。 伺服控制程序JOG HOME 定位 全部写成了功能块FB .你可以直接拿过去用&#xff0c;MCGS触摸屏&#xff0c;做的配方&#xff0c;也可以拿出来…

2026年1月聚乙烯蜡厂家推荐排行榜:氧化聚乙烯蜡、裂解聚乙烯蜡,专业改性助剂源头供应商精选

2026年1月聚乙烯蜡厂家推荐排行榜:氧化聚乙烯蜡、裂解聚乙烯蜡,专业改性助剂源头供应商精选 在塑料、涂料、油墨、热熔胶等众多工业领域,聚乙烯蜡、氧化聚乙烯蜡及裂解聚乙烯蜡作为关键的改性助剂与加工助剂,其性能…

盘点主流小程序开发公司:从功能到服务多维对比

处于当下的数字化商业状况下是这般情况&#xff0c;当中&#xff0c;小程序已然变为连接线上跟线下、品牌和消费者的关键桥梁是明确的事实。它具备无需下载安装、即用即走的便捷特性&#xff0c;借此帮助众多企业达成了销售渠道的拓展这点是客观结果&#xff0c;以及也达成了运…

盘点主流小程序开发公司:从功能到服务多维对比

处于当下的数字化商业状况下是这般情况&#xff0c;当中&#xff0c;小程序已然变为连接线上跟线下、品牌和消费者的关键桥梁是明确的事实。它具备无需下载安装、即用即走的便捷特性&#xff0c;借此帮助众多企业达成了销售渠道的拓展这点是客观结果&#xff0c;以及也达成了运…

2026年输送机怎么选?热门品牌性能与价格大揭秘,Z型提升机/斗式提升机/连续提升机/链板输送机,输送机制造商怎么选

在工业自动化浪潮持续深入的背景下,输送机作为物料搬运系统的核心装备,其市场需求呈现出多元化、专业化的发展趋势。从食品加工到玻璃制造,从冶金化工到医药包装,高效、稳定、适配性强的输送设备已成为企业提升生产…

2026 年 1 月 MBR膜/中空纤维超滤膜/柱式超滤膜/绳型生物填料/RO膜厂家推荐排行榜:高效分离与稳定过滤的工艺核心组件精选

2026 年 1 月 MBR膜/中空纤维超滤膜/柱式超滤膜/绳型生物填料/RO膜厂家推荐排行榜:高效分离与稳定过滤的工艺核心组件精选 在水处理与生物处理技术领域,膜分离技术与生物填料作为核心工艺组件,其性能与可靠性直接决…

照明产业源头厂家的核心优势与价值重塑

在照明产业里&#xff0c;源头厂家被界定为身为那种这样的灯具制造商&#xff0c;其具备从研发开始&#xff0c;历经设计&#xff0c;一直到生产制造的完整链条。这种类型的诸多企业&#xff0c;一般常常拥有属于自身的工厂&#xff0c;以及研发团队&#xff0c;还有质量管理体…

跨模态注意力优化实战

&#x1f493; 博客主页&#xff1a;借口的CSDN主页 ⏩ 文章专栏&#xff1a;《热点资讯》 跨模态注意力优化实战&#xff1a;从理论瓶颈到高效部署 目录 跨模态注意力优化实战&#xff1a;从理论瓶颈到高效部署 引言&#xff1a;跨模态AI的效率困局 一、现状透视&#xff1a;成…

2025年成都火锅排行出炉!这家地道老店本地人反复打卡,特色美食/美食/火锅/烧菜火锅/社区火锅成都火锅品牌哪家好

在美食之都成都,火锅不仅是餐饮品类,更是城市文化的重要载体。随着消费者对品质与体验的要求日益提升,那些凭借真材实料、独特风味和地道氛围赢得本地食客口碑的火锅品牌,正成为市场的中坚力量。本文基于公开平台数…

开源同城跑腿小程序源码系统,全功能商业运营版详解

温馨提示&#xff1a;文末有资源获取方式在当下同城服务需求激增的市场环境中&#xff0c;一款基于PHPMySQL开发的同城跑腿小程序源码系统应运而生&#xff0c;为跑腿团队提供了一站式技术解决方案。该系统集用户端、骑手端和运营后台于一体&#xff0c;支持帮取、帮送等多种模…

开源同城跑腿小程序源码系统,全功能商业运营版详解

温馨提示&#xff1a;文末有资源获取方式在当下同城服务需求激增的市场环境中&#xff0c;一款基于PHPMySQL开发的同城跑腿小程序源码系统应运而生&#xff0c;为跑腿团队提供了一站式技术解决方案。该系统集用户端、骑手端和运营后台于一体&#xff0c;支持帮取、帮送等多种模…

Flink BlackHole SQL Connector /dev/null 式“吞数据”Sink,压测与验证的神器

1. 最小可用 DDL CREATE TABLE blackhole_table (f0 INT,f1 INT,f2 STRING,f3 DOUBLE ) WITH (connector blackhole );写入&#xff1a; INSERT INTO blackhole_table SELECT f0, f1, f2, f3 FROM some_table;你会发现&#xff1a;作业在跑、吞吐很高、但没有任何外部输出&…