位置: IT常识 - 正文

现代 C++ 编程指南(现代c++教程)

编辑:rootadmin
现代 C++ 编程指南现代 C++ 编程指南 Visual Studio 2012 此主题尚未评级 - 评价此主题 现代 C++ 编程指南 Visual Studio 2012

推荐整理分享现代 C++ 编程指南(现代c++教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:现代c++ pdf,现代c:概念剖析和编程实践,c++编程代码教程,现代c++实战30讲,c++编程代码教程,现代c++程序设计,现代c++实战30讲,现代c++实战30讲,内容如对您有帮助,希望把文章链接给更多的朋友!

此主题尚未评级 - 评价此主题

[本文档仅供预览,在以后的发行版中可能会发生更改。包含的空白主题用作占位符。]

C + + 是世界上最广泛使用的编程语言之一。 快速、 高效地编写得很好的 c + + 程序。 语言是比其他语言更灵活,因为您可以使用它来创建各种类型的应用程序,从有趣和令人兴奋的游戏,高性能的科学记数法软件,设备驱动程序、 嵌入的程序和 Windows 客户端应用程序。 20 年以上,c + + 来解决问题 (如这些和其他许多人使用。 您可能不知道是越来越多的 c + + 程序员有 dowdy 的 C 样式编程,昨天的扭曲,和现代的 c + + donned 相反。

C + + 的原始要求之一是与 C 语言的向后兼容性。 从那时起,c + + 的发展壮大几个小版本 — — C 类,则原始的 c + + 语言规范,和然后后续的许多增强。 由于的这种继承性,c + + 通常称为多范例的编程语言。 在 c + + 中,可以执行纯粹的过程涉及原始指针、 数组、 空值终止的字符串、 自定义数据结构,以及其他功能,可能会使卓越的性能,但还可以生成的错误和复杂性的 C 样式编程。 C 样式编程是充满 perils 类似,因为 c + + 的成立目标之一是类型安全的编写、 扩展,和维护更容易地程序。 在早期,c + + 采纳如面向对象编程的编程范例。 多年来,一起高测试的算法和数据结构的标准库的语言,以添加功能。 它是这些添加的内容进行现代的 c + + 样式可能的。

现代的 c + + 强调:

基于堆栈的范围而不是堆集或静态全局作用域。

而不是显式的类型名称的自动类型推断。

而不是原始的指针的聪明指针。

std::string 和std::wstring种而不是原始char[]数组。

标准模板库 (STL) 容器 (如vector, list,和map而不是原始数组或自定义容器。

代替手动编码的 STL 算法。

例外情况,报告和句柄的错误情况。

内联 lambda 函数的小型单独实现的函数而不是。

C + + 语言本身也已得到发展。 将下面的代码段进行比较。 此演示了如何使用 c + + 中是件事:

C++复制circle* p = new circle( 42 );vector<shape*> v = load_shapes();for( vector<circle*>::iterator i = v.begin(); i != v.end(); ++i ) { if( *i && **i == *p ) cout << **i << “ is a match\n”;}for( vector<circle*>::iterator i = v.begin(); i != v.end(); ++i ) { delete *i; // not exception safe}delete p;现代 C++ 编程指南(现代c++教程)

以下是现代的 c + + 中如何来完成相同的操作:

C++复制auto p = make_shared<circle>( 42 );vector<shared_ptr<shape>> v = load_shapes();for_each( begin(v), end(v), [&]( const shared_ptr<shape>& s ) { if( s && *s == *p ) cout << *s << " is a match\n";} );

现代的 c + + 中,不必使用新的或删除或显式的异常处理,因为您可以使用智能指针来代替。 当您使用auto类型推导和 lambda 函数,您可以编写代码更快、 拧紧,和更好地理解它。 和for_each更清晰、 更容易使用,且比非有意的错误for循环。 可以使用与最少的代码行的样板文件写入您的应用程序。 和您可以使该代码安全异常的内存安全的并处理未配置/解除分配或错误代码。

现代的 c + + 合并了两种类型的多态性: 编译时,通过模板,并运行时,通过继承和虚拟化。 您可以混合使用这两种多态性很好的效果。 STL 模板shared_ptr使用内部的虚拟方法来完成其显然轻松类型擦除。 但不 over-use 的多态性的虚拟化时,模板是更好的选择。 模板可以是功能非常强大。

如果来自另一种语言,特别是从托管语言的大多数类型是引用类型,并且很少是值类型,c + + 知道 c + + 类是值类型,默认情况下。 但是,您可以将它们指定为引用类型,以便支持面向对象编程的多态行为。 很有帮助的角度来看: 值类型是有关内存和布局控制,引用类型的详细信息是有关基类和为支持多态性的虚函数的详细信息。 默认情况下,值类型是此 — — 它们具有复制构造函数和复制赋值运算符。 当您指定为引用类型时,则使类非此 — 禁用复制构造函数和复制赋值运算符 — 并使用虚拟析构函数,它支持多态性。 值类型也是关于内容的复制,使您可以单独修改的两个独立的值。 有关标识引用类型,但是 — 是什么类型的对象 — — 并因此有时称为多态类型。

C + + 因为电源是上帝再次出现 renaissance。 语言 (如 Java 和 C# 程序员的效率很重要,但电源和性能都是极其重要时显示它们的局限性很大。 高效率和电源,尤其是在具有有限硬件的硬件上执行任何操作节拍现代的 c + +。

不仅是现代的语言,开发工具,也是。 Visual Studio可以在开发周期的所有部分强健高效。 它包括应用程序生命周期管理 (ALM) 工具、 IDE 功能增强,如 IntelliSense、 适合的工具的机制,如 XAML 和构建、 调试,以及许多其他工具。

本文档的这一部分中的文章提供了高级的准则和最佳做法的最重要的功能和编写现代的 c + + 程序的技术。

C++11 函数 (现代 C++)

C++ 类型系统 (现代 C++ 编程指南)

对象生存期和资源管理 (现代 C++)

Objects Own Resources (RAII)

智能指针 (现代 C++ 编程指南)

编译时封装 (现代 C++) Pimpl

Containers (Modern C++)

Algorithms (Modern C++)

字符串和文本 (现代 C++)

字符串和 I/O 格式设置 (现代 C++)

错误和异常处理 (现代 C++ 编程指南)

Portability At ABI Boundaries (Modern C++)

本文链接地址:https://www.jiuchutong.com/zhishi/304074.html 转载请保留说明!

上一篇:MVC架构-01(MVC架构模式)

下一篇:phpcms v9错误日志记录在哪里(错误日志怎么修复)

  • 迈出一步最难(最难的是迈出第一步)

    迈出一步最难(最难的是迈出第一步)

  • 小米手表color2闹钟怎么设置(小米手表color2闹钟从哪里关闭)

    小米手表color2闹钟怎么设置(小米手表color2闹钟从哪里关闭)

  • 朋友圈为什么有的内容会折叠起来(朋友圈为什么有的折叠有的不折叠)

    朋友圈为什么有的内容会折叠起来(朋友圈为什么有的折叠有的不折叠)

  • 红米k30pro的屏幕指纹在哪里(红米k30pro的屏幕是三星的吗)

    红米k30pro的屏幕指纹在哪里(红米k30pro的屏幕是三星的吗)

  • 华为mate20pro可以用无线充电吗(华为mate20pro可以扩展内存吗)

    华为mate20pro可以用无线充电吗(华为mate20pro可以扩展内存吗)

  • iphone锁屏突然变虚化(苹果锁屏突然变了)

    iphone锁屏突然变虚化(苹果锁屏突然变了)

  • oppo手机一开机就出现简体中文(oppo手机一开机出现coloros)

    oppo手机一开机就出现简体中文(oppo手机一开机出现coloros)

  • 剪映怎么给视频调色(剪映怎么给视频配文字)

    剪映怎么给视频调色(剪映怎么给视频配文字)

  • 为什么开了悬浮窗没有显示出来(为什么开了悬浮窗没有显示出来vivo)

    为什么开了悬浮窗没有显示出来(为什么开了悬浮窗没有显示出来vivo)

  • 智能情景模式怎么设置(智能情景模式怎么关闭)

    智能情景模式怎么设置(智能情景模式怎么关闭)

  • 优思版手机是什么意思(优思版手机能不能买)

    优思版手机是什么意思(优思版手机能不能买)

  • 文本对齐的五种方法(文本对齐方式什么意思)

    文本对齐的五种方法(文本对齐方式什么意思)

  • qq通讯录能发信息吗(qq通讯录能发信息不)

    qq通讯录能发信息吗(qq通讯录能发信息不)

  • 手机二维码扫不出来怎么回事(手机二维码扫不出来 看不清楚)

    手机二维码扫不出来怎么回事(手机二维码扫不出来 看不清楚)

  • 拼多多分享链接怎么变成复制了(拼多多分享链接怎么变成口令)

    拼多多分享链接怎么变成复制了(拼多多分享链接怎么变成口令)

  • 175是虚拟号段吗(175176是虚拟号段吗)

    175是虚拟号段吗(175176是虚拟号段吗)

  • 苹果x有3dtouch功能吗

    苹果x有3dtouch功能吗

  • 港版iphone11支持电信卡吗(港版iphone11支持双卡双待吗)

    港版iphone11支持电信卡吗(港版iphone11支持双卡双待吗)

  • kmeans算法基本步骤(kmeans算法的步骤)

    kmeans算法基本步骤(kmeans算法的步骤)

  • 微信换了手机号不能登入怎么办(微信换了手机号码后 还显示原来的)

    微信换了手机号不能登入怎么办(微信换了手机号码后 还显示原来的)

  • 魅族16s防水吗(魅族16plus防水吗)

    魅族16s防水吗(魅族16plus防水吗)

  • opporeno屏幕材质(opporenoz屏幕材质)

    opporeno屏幕材质(opporenoz屏幕材质)

  • word文档标准格式(word文档标准的格式是什么样的)

    word文档标准格式(word文档标准的格式是什么样的)

  • VUE3.2 + vue-echarts + DataV 数据可视化大屏(项目)

    VUE3.2 + vue-echarts + DataV 数据可视化大屏(项目)

  • 计提应交个人所得税分录怎么做
  • 减免税款最终转到哪个科目?
  • 以旧换新销售货物时,一律按照新货物的价格缴纳增值税
  • 金税盘数据迁移失败
  • 职工福利按工资发放吗
  • 金蝶利润表没有数据怎么办
  • 报表的应交税费都包含什么
  • 会计没签字出纳付款违法么
  • 往来款少付零头怎么入账
  • 给不是本单位的人开证明
  • 国税申报需要带什么资料
  • 企业税收案例分析
  • 利税总额为负数如何表述出来
  • 质保金的税务处理
  • 净利润亏损怎么结转
  • 存款保险能取出来钱吗
  • 记账凭证汇总表和汇总记账凭证有什么区别
  • 国税退税怎么做账
  • 交易性金融资产属于什么类
  • 暂估入库有时间限制吗
  • macos dock栏
  • bios设置的完整说法
  • 投资理财产品的优势和劣势
  • win10设置系统启动
  • 其他债权投资的交易费用计入什么科目
  • 外贸收汇怎么处理
  • php自定义变量
  • 应交增值税缴纳后入什么费用
  • urlerror什么意思
  • 怎么打开win11的控制面板
  • linux的grep命令使用
  • 根据新企业所得税法的规定,企业购买并实际使用
  • 公账提取备用金限额
  • 资产接收范围的确定
  • 自行建造完成交付的房子
  • 车辆违章罚款的钱上交到那了
  • 处置工程物资取得净收益
  • React常见面试题
  • php 自动加载
  • 支付劳务公司的劳务费计入应付账款还是其他应付款
  • 既简单又安全的小实验
  • Yii2中使用asset压缩js,css文件的方法
  • 工程物资发生报废损毁
  • 企业所得税实施条例第七条
  • 公务交通通讯补贴
  • 金税盘怎么设置字体
  • 小企业会计制度和企业会计制度的区别
  • 商品进销差价是流动资产吗
  • 什么是简易征收?其公式是什么?
  • 账实核对是指各种财产物资与债权债务的账面余额
  • 本月没开票还需要上报汇总吗
  • 受疫情影响较大的上市公司有哪些
  • 小企业固定资产折旧方法
  • 暂估入库成本结转
  • mysql查找指定元素的位置
  • mysql预编译原理
  • mysql57服务无法启动,找不到文件夹
  • win8的应用商店
  • 不重装系统怎么修复
  • win8如何删除登录密码
  • linux下scp远程拷贝包含空格的目录或者文件的解决方法
  • win7系统打不开浏览器
  • 双硬盘 win10
  • windows8截图保存在哪里
  • w7系统序列号怎么查
  • [置顶] 启动unity3d 提示“unity3d EditorWindow could not be loaded because the script is not found in the projec”
  • js中math.pow
  • 有关于js构造函数的题
  • node.js网站
  • 苹果多点触控
  • angularjs教程
  • nodejs实例教程
  • ajax+node+request爬取网络图片的实例(宅男福利)
  • 朵朵舞百科
  • 安卓hook注入工具
  • js实现无限循环
  • 江苏叉车证查询网上查询
  • 附加税申报表样本
  • 上报汇总之后怎么申报
  • 电信宽带欠费滞纳金最多减免多少?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设