Efficient C++ 阅读笔记
Efficient C++ 阅读笔记
技术要点:
- reference 永远没有成为NULL的机会 如果出现 那么请隔离那个写出这种代码的程序员
- 在写程序的时候为了系统的健壮性能,一定要测试 指针的可用性能 但是 reference 就可以不用测试.
{不指向任何对象: pointer
不同时间指向不同对象:pointer
总是会代表某个对象,永远不变心:reference }
- static_cast() 拥有着和传统
一样的表现形式 - const_cast 最常用的用途将某一个对象的常量性去除掉
- dynamic_cast 协助你巡航于继承体系之中
- reinterpret_cast 最常用的用途是转换"函数指针" 例如:有一个函数指针返回的是 void 想强制转换 一个函数指针返回 int
funcPtrArray[0] = reinterpret_cast(&doSomething);
不具有移植性
多态的具体实现方式:父类的指针指向子类- 不要用多态方式处理数组 因为子类的数组移动的大小和父类完全不一样
- 具体类不要继承自另一个具体类 不太能够上面的犯错
- 对定制的类型转换保持警觉,因为这样容易导致错误
解决方案之一 : 对double的重载转换为另一个函数取代类型转换操作符,asDouble 写一个这个函数
- explicit 解决隐士转换
之二: 代理技术 例如 先把一个int 转换为一个类 然后这个类就不可以隐式转换为另一个类
- 前置效率更高,因为没有创建临时变量,似乎后置的代码是以前置代码为基础的这样效率就差不多了
- 不要重载 && 和 || 因为无法保证"骤死式" 最好也不要重载 ,号操作符号
Efficient C++ 阅读笔记的更多相关文章
- [阅读笔记]Software optimization resources
http://www.agner.org/optimize/#manuals 阅读笔记Optimizing software in C++ 7. The efficiency of differe ...
- 论文阅读笔记 Improved Word Representation Learning with Sememes
论文阅读笔记 Improved Word Representation Learning with Sememes 一句话概括本文工作 使用词汇资源--知网--来提升词嵌入的表征能力,并提出了三种基于 ...
- Deep Learning of Graph Matching 阅读笔记
Deep Learning of Graph Matching 阅读笔记 CVPR2018的一篇文章,主要提出了一种利用深度神经网络实现端到端图匹配(Graph Matching)的方法. 该篇文章理 ...
- [置顶]
人工智能(深度学习)加速芯片论文阅读笔记 (已添加ISSCC17,FPGA17...ISCA17...)
这是一个导读,可以快速找到我记录的关于人工智能(深度学习)加速芯片论文阅读笔记. ISSCC 2017 Session14 Deep Learning Processors: ISSCC 2017关于 ...
- 阅读笔记 1 火球 UML大战需求分析
伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本 <火球 UML大战需求分析>,首先 ...
- 《uml大战需求分析》阅读笔记05
<uml大战需求分析>阅读笔记05 这次我主要阅读了这本书的第九十章,通过看这章的知识了解了不少的知识开发某系统的重要前提是:这个系统有谁在用?这些人通过这个系统能做什么事? 一般搞清楚这 ...
- <<UML大战需求分析>>阅读笔记(2)
<<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...
- uml大战需求分析阅读笔记01
<<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...
- Hadoop阅读笔记(七)——代理模式
关于Hadoop已经小记了六篇,<Hadoop实战>也已经翻完7章.仔细想想,这么好的一个框架,不能只是流于应用层面,跑跑数据排序.单表链接等,想得其精髓,还需深入内部. 按照<Ha ...
- Hadoop阅读笔记(六)——洞悉Hadoop序列化机制Writable
酒,是个好东西,前提要适量.今天参加了公司的年会,主题就是吃.喝.吹,除了那些天生话唠外,大部分人需要加点酒来作催化剂,让一个平时沉默寡言的码农也能成为一个喷子!在大家推杯换盏之际,难免一些画面浮现脑 ...
随机推荐
- Asp.net mvc基础(六)TempData
在客户端重定向或验证码等情况下,由于要跨请求的存取数据,是不能放到ViewBag.Model中,需要"暂时存到Session中,用完了删除"的需求:使用TempData可以做到. ...
- 如何在 Java 中进行内存泄漏分析?
如何在 Java 中进行内存泄漏分析? 内存泄漏是指程序中无法访问的对象仍然被占用内存,导致内存无法回收,最终导致内存不足.程序崩溃等问题.Java 中的内存泄漏通常与垃圾回收机制的工作方式相关,虽然 ...
- access vba实现OLE对象保存到本地
参考oletodisk的实现方法,更新为在64位office上野可以运行,函数模块代码如下: 1 Option Compare Database 2 Option Explicit 3 4 5 'DE ...
- 从零到一:利用金仓社区数据,LoRa微调与Spring AI 构建私有化千问模型
上次我们在Coze平台上成功搭建了一个针对金仓问题的解决助手.这个智能体的核心工作流程相对简单:每次它通过HTTP接口调用插件,在金仓平台内部进行搜索,随后利用大模型的推理能力对查询结果进行分析,从而 ...
- 操作系统综合题之“短进程优先调度算法(Shortest-Process-First,SPF)和非抢占式优先权调度算法(Priority-Scheduling Lgorithm)的进程执行顺序并计算周转时间以及平均周转时间【分开计算题】”
一.问题: 1.当系统采用短进程优先调度算法时,试写出进程的执行顺序,并计算各个进程的周转时间以及平均周转时间 2.当系统采用优先权调度算法时,试写出进程的执行顺序,并计算各个进程的周转时间以及平均周 ...
- div中文本超过指定宽度自动换行
一.场景 因为想要一个页面显示完所有的文本,所以要进行文本处理 二.代码 宽度超过1800px就自动换行 <div style="word-break: break-all; word ...
- 多数据库迁移的艺术:Alembic在复杂环境中的精妙应用
title: 多数据库迁移的艺术:Alembic在复杂环境中的精妙应用 date: 2025/05/11 00:35:52 updated: 2025/05/11 00:35:52 author: c ...
- C#开发的PDF文件浏览器 - 开源研究系列文章 - 个人小作品
以前个人的PDF浏览主要是用的Adobe DC的PDF,不过它这个打开速度还是一般.后来安装的极速PDF浏览器,速度还是比较快的了.它这个主要是浏览,然后还能够安装编辑器对PDF文件进行编辑,不过就需 ...
- C++11 auto和decltype关键字
今天来看下C++中的auto和decltype两个关键字 auto关键字定义变量,编译器会自动判断变量的类型 举个栗子: auto i =100; // i 是 int auto p = new A( ...
- 极简版闹钟(java)
package javaBasic; import java.awt.Toolkit; import java.awt.event.*; import java.text.SimpleDateForm ...