当前位置:当前位置:主页 > 计算机电子书 > C++ > C++编程 pdf电子书
C++20编程技巧:98个问题解决方案示例(原书第2版)

C++20编程技巧:98个问题解决方案示例(原书第2版) PDF 高清版

  • 更新:2022-04-14
  • 大小:36.3 MB
  • 类别:C++编程
  • 作者:J.伯顿·布朗宁、布鲁斯·萨瑟兰
  • 出版:机械工业出版社
  • 格式:PDF

  • 资源介绍
  • 学习心得
  • 相关内容

C++20编程技巧:98个问题解决方案示例(原书第2版)》是由机械工业出版社出版的一本关于C++编程方面的书籍,作者是J.伯顿·布朗宁、布鲁斯·萨瑟兰,主要介绍了关于C++、编程技巧方面的知识内容,目前在C++编程类书籍综合评分为:8.1分。

书籍介绍

涵盖C++核心语言标准以及标准模板库(STL)中一些可用的代码模板,是一本方便的专题式代码参考指南。

内容简介

本书带你探索C20的主要新特性,包括模块、概念、飞船运算符和智能指针。本书是一本方便的专题式代码参考指南,涵盖了C核心语言标准以及标准模板库(STL)中可用的一些代码模板。通过本书,你将学习数字、字符串、日期、时间、类、异常、流、流程和指针等。此外,你还将看到各种代码示例、C算法模板、并行处理、多线程和数值处理、3D图形编程代码等。同时,本书还提供了大量的STL模板,如函数对象模板、适配器模板、分配器模板和扩展模板。

目录

  • 译者序
  • 前言
  • 关于技术审校者
  • 第1章C入门1
  • 1.1寻找文本编辑器2
  • 1.2在Ubuntu上安装Clang3
  • 1.3在Windows上安装Clang4
  • 1.4在macOS上安装Clang5
  • 1.5构建你的个C程序6
  • 1.6在Cygwin或Linux中使用GDB调试C程序8
  • 1.7在macOS上调试C程序11
  • 1.8切换C编译模式12
  • 1.9用Boost库构建程序13
  • 1.10安装MicrosoftVisualStudio14
  • 第2章现代C16
  • 2.1初始化变量16
  • 2.2使用初始化列表初始化对象19
  • 2.3使用类型推断21
  • 2.4在函数中使用auto关键字24
  • 2.5编译时常量的使用26
  • 2.6lambda的使用29
  • 2.7与时间有关的程序37
  • 2.8理解左值引用和右值引用41
  • 2.9使用托管指针48
  • 第3章文本的处理55
  • 3.1用字面量表示代码中的字符串55
  • 3.2面向用户的本地化文本60
  • 3.3从文件中读取字符串66
  • 3.4从XML文件中读取数据69
  • 3.5在字符串中插入运行时数据74
  • 第4章数字的处理78
  • 4.1在C中使用整数类型78
  • 4.2用关系运算符做决策82
  • 4.3用逻辑运算符进行链式决策86
  • 4.4使用十六进制值88
  • 4.5二进制运算符的位运算89
  • 4.6C20的宇宙飞船运算符96
  • 第5章类98
  • 5.1定义一个类98
  • 5.2向类中添加数据99
  • 5.3向类中添加方法101
  • 5.4使用访问修饰符103
  • 5.5初始化类成员变量106
  • 5.6类的清理110
  • 5.7类的拷贝113
  • 5.8使用移动语义优化代码121
  • 5.9实现虚函数125
  • 第6章继承127
  • 6.1类的继承127
  • 6.2对派生类中的成员变量和方法进行访问控制129
  • 6.3隐藏派生类中的方法133
  • 6.4使用多态基类135
  • 6.5防止方法重写138
  • 6.6创建接口140
  • 6.7多重继承142
  • 第7章标准模板库的容器145
  • 7.1存储固定数量的对象145
  • 7.2存储更多的对象147
  • 7.3存储一组不断变化的元素154
  • 7.4将排序对象存储在容器中以便快速查找157
  • 7.5将未排序的元素存储在容器中以便快速查找165
  • 7.6使用C20的“指定初始化”特性168
  • 第8章标准模板库的算法170
  • 8.1在容器中使用迭代器定义序列170
  • 8.2对容器中的每个元素都调用函数175
  • 8.3查找容器中的值和小值177
  • 8.4计算序列中某个值的出现次数181
  • 8.5查找序列中的值184
  • 8.6排序序列中的元素185
  • 8.7查找集合中的值187
  • 第9章模板189
  • 9.1创建模板函数189
  • 9.2模板偏特化192
  • 9.3创建类模板198
  • 9.4创建单例200
  • 9.5在编译时计算值202
  • 9.6concept特性205
  • 第10章内存207
  • 10.1静态内存的使用207
  • 10.2栈内存的使用209
  • 10.3堆内存的使用213
  • 10.4自动共享内存的使用215
  • 10.5创建单实例动态对象218
  • 10.6创建智能指针222
  • 10.7通过重载new和delete调试内存问题229
  • 10.8确定代码更改对性能的影响235
  • 10.9了解内存选择对性能的影响237
  • 10.10减少内存碎片问题240
  • 第11章并发252
  • 11.1使用线程执行并发任务252
  • 11.2创建线程作用域变量257
  • 11.3使用互斥的方式访问共享对象268
  • 11.4创建等待事件的线程277
  • 11.5从线程中检索结果282
  • 11.6在线程之间同步队列消息286
  • 第12章网络298
  • 12.1在macOS上设置BerkeleySockets应用程序298
  • 12.2在Ubuntu的Eclipse中设置BerkeleySockets应用程序301
  • 12.3在Windows的VisualStudio中设置Winsock2应用程序305
  • 12.4在两个程序之间创建一个Socket连接309
  • 12.5在两个程序之间创建网络协议330
  • 第13章脚本346
  • 13.1在VisualStudioC中运行Lua命令346
  • 13.2在Eclipse中创建一个Lua项目350
  • 13.3在Xcode中创建一个Lua项目352
  • 13.4使用Lua编程语言353
  • 13.5从C中调用Lua函数362
  • 13.6从Lua中调用C函数371
  • 13.7创建异步Lua函数377
  • 第14章3D图形编程383
  • 14.1GLFW简介383
  • 14.2渲染三角形386
  • 14.3创建纹理四边形396
  • 14.4从文件中加载几何体416
  • 14.5使用C20的module特性433

资源获取

相关资源

网友留言