学习C++ Primer 的个人理解(三)】的更多相关文章

第三章,主要内容是字符串和数组.感觉作者的意图是希望读者可以早一点可以写出简单的小程序,并且可以早点接触迭代器这种思想. 在我看来,这种内容的难度并不大. 对于编程来说,最重要的应该是思想,类似vector的各种操作,读者仅仅只需要知道vector可以做这些操作,真正用到的时候,能够想起来,再去查就好了. 在看<UNIX环境高级编程>的时候,各种系统调用,不可能每一个都记得熟,所以我认为这种只需要知道“可以这么做“就行了,用到的时候再查,久而久之自然就熟悉了. 然而关键的是为什么,比如为什么要…
这一章介绍顺序容器,在之前的第三章中,了解到的vector就属于顺序容器的一种. 一个容器就是一些特定类型对象的集合. 除了vector,还有哪些顺序容器? vector: 大小可变,随机访问的速度很快,但是在尾部之外的部分插入或删除元素可能会很慢. deque : 随机访问的速度很快,在头和尾插入或删除的速度都很快. list: 双向链表,只支持双向顺序访问,在任何位置插入或删除操作都很快(链表的特性) forward_list: 单向链表,只支持单向的随机访问.在任何位置插入或删除都很快 a…
本身就一定基础的读者我想变量常量这些概念应该已经不是问题了.但是本章还是有几个重点,需要特别留意一下的: 1.初始化和赋值是不同的操作 2.任何非0值都是true 3.使用新标准列表初始化,在有丢失精度的可能时,会报错. 4.引用一旦绑定对象就不可再绑定到其他对象,因此也必须初始化 5.const引用初始化时可以赋予字面常量值,只要可以转换为相应的类型 6.顶层const意味着指针本身是个常量,底层const意味着指针所指向的对象是常量 7.声明成constexpr的变量是一个常量. 到了第二章…
<C++ Primer>这本书可以说是公认的学习C++最好的书,但我觉得不是特别适合作为教材,书中内容的顺序让人有些蛋疼.我个人认为初学此书是不能跳着看的.如果急于上手的话,我更推荐<C++程序设计>. 首先是第一章,第一章可以说是本书第一部分的一个简略的概括.对于有其他编程语言经验的读者来说,看完这章基本可以看出C++的基本语法与其他语言的差异.对于零基础的读者,可以跟着书中内容写一些小程序了. 本主要介绍了以下几点: 1.一个最简单的C++程序是什么样的. 2.初步了解输入流和…
结束了第一部分,在最后的第七章,我只简单的总结了一下,因为后面还会更详细的说明有关类的内容.而且说实在的这一张的内容让我很不舒服,验证了本书实际上有许多内容是作者的学生一起拼凑而成的.第七章结构给我感觉非常混乱,不断地“再探”而看不出理由,并没有前置只是需要了解. 第八章是IO库 IO类 ifstream 和 istringstream 都继承自 istream. 所以我们可以想使用istream一样使用ifstream 和 istringstream. IO对象无拷贝或赋值 由于不能拷贝IO对…
由于自己看书之后经常容易忘记细节,所以写在博客上让我自己的思路更加清晰一些. 我的博客仅仅只是将书中的内容概括一下,有一些不好理解的部分我会用我自己理解的方式使用大白话写出来. 仅此而已.…
动态内存与智能指针 在C++中, 动态内存用 new来分配空间并返回一个指向该对象的指针 用delete来销毁. 由于手动的对动态内存进行操作容易出现问题.所以新的标准库提供了两种智能指针. 智能指针的行为类似于常规指针.区别在于他负责自动释放所指对象. shared_ptr : 允许多个指针指向同一个对象. unique_ptr :独占所指向的对象 weak_ptr   :是一种弱引用,指向shared_ptr 所管理的对象 shared_ptr 类 类似vector ,shared_ptr…
关联容器 就像是个字典, 其元素是 键 - 值 对. 关键字起到索引作用. 有序: map:关联数组:保存 健-值 对 set : 关键字既是值. multimap : 关键字可重复出现的map multiset   : 关键字可重复出现的set 无序: unordered_ 前四个 使用map map<sring ,size_t> word_count; 使用set set<string> exclude pair类型 一个pair类型保存两个数据成员. 创建一个pair时,我们…
标准库没有给每个容器都定义成员函数来实现 查找,替换等操作.而是定义了一组泛型算法,他们可以用于不同类型的元素或多种容器类型. 迭代器令算法不依赖与容器 算法永远不会执行容器的操作 算法本身不会执行容器的操作,他只会运行于迭代器之上. 算法永远不会改变底层容器的大小,有可能改变元素的值,也可能在容器内移动元素,但永远不会直接添加或删除元素. 只读算法 类似find就是这样一种算法,只会读取其输入范围内的元素,永远不会改变元素. accumulate也是只读算法. int sum = accumu…
类,后面还有两章是介绍有关于类的内容的.这一张依然只是个概括.但也已经将大致用法介绍完了. 重点如下: 1.成员函数的声明,必须在类的内部. 2.引用const成员函数 我们知道成员函数中有一个名为this的隐式参数,相当于调用它的那个对象. 默认情况下,this是顶层const的.也就意味着,我们不能把this绑定到一个常量对象上. 还记得第二章关于const的细节问题么? this是顶层const的,意味着this本身不能被改变. 而如果对象是一个常量对象,那我就不能把this绑定到对象上.…
第四章和第五章没什么特别的.基本上就是书本上的字面意思,也没什么需要注意的细节.直接记录第六章. 本章介绍了函数,其实也没什么特别的.但有几个重点 1.形参的类型决定了形参和实参的交互方式.形参是引用,则它将绑定到实参上. 2.实参的值拷贝给形参时,形参和实参是两个相互独立的对象. 当初始化一个非引用类型变量时,初始值被拷贝给变量.此时对变量的改动不会影响初始值. 3.对于指针形参,函数接收一个指针,实际上跟非引用类似,拷贝的是指针的值,两个指针是不同的指针 C++中,建议用引用类型的形参代替指…
Java虚拟机内存溢出异常--<深入理解Java虚拟机>学习笔记及个人理解(三) 书上P39 1. 堆内存溢出 不断地创建对象, 而且保证创建的这些对象不会被回收即可(让GC Root可达). /** * 堆内存溢出demo * VM Options: -Xms6m -Xmx6m */ public class HeapOOM { static class OOMObejct { } public static void main(String[] args) { List<OOMObe…
定场诗 金山竹影几千秋,云索高飞水自流: 万里长江飘玉带,一轮银月滚金球. 远自湖北三千里,近到江南十六州: 美景一时观不透,天缘有分画中游. 前言 本章是重读<学习JavaScript数据结构与算法-第三版>的系列文章,本章为各位小伙伴分享数据结构-栈的故事,请让胡哥带你走进栈的世界 栈 何为栈?栈是一种遵从后进先出(LIFO)原则的有序集合. 新添加或待删除的元素都保存在栈的同一端,称作栈顶:另一端就叫栈底. 在栈里,新元素都靠近栈顶,旧元素都接近栈底. 基于数组的栈 我们将创建一个基于数…
继续前两篇,接着本第三篇<学习Coding-iOS开源项目日志(三)>讲解Coding-iOS开源项目. 前 言:作为初级程序员,想要提高自己的水平,其中一个有效的学习方法就是学习别人好的项目.本篇开始会陆续更新本人对github上开源的一个很不 错的项目的一点点学习积累.也就是,探究着别人写的源码,我学到了新的什么东西?本人愚拙,而且码龄不多,也就三年左右,水平不高,如有挫解,还望指正. 本人乐爱学习,乐于分享,广结良缘,愿意交流.当然,高手可以飘过. Coding-iOS项目网址:http…
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第2章节--SharePoint 2013 App 模型概览 理解三个SharePoint 部署模型 Apps         由于SharePoint 2013 正逐步移动到云,有三类部署模型可用来帮助你完毕这个目标(关于SharePoint Apps): SharePoint-hosted: Autohosted: Provider-hosted:         每一类部署模型都含有特色,使它成为针对不同类型Ap…
ElasticSearch 深入理解 三:集群部署设计 ElasticSearch从名字中也可以知道,它的Elastic跟Search是同等重要的,甚至以Elastic为主要导向. Elastic即可伸缩性,作为一个分布式的搜索引擎,可伸缩性是它的核心竞争力. Elastic&Shard 这两个词能放在在一起,因为ES的Elastic是建立在Shard的基础上.Shard作为ES伸缩性的基本单元,可以在不同的node之间迁移.例如我一个实际测试的例子: 两个节点的时候,一个index配置15个s…
定场诗 马瘦毛长蹄子肥,儿子偷爹不算贼,瞎大爷娶个瞎大奶奶,老两口过了多半辈,谁也没看见谁! 前言 本章为重读<学习JavaScript数据结构与算法-第三版>的系列文章,主要讲述队列数据结构.双端队列数据结构以及队列相关应用. 队列 队列是遵循先进先出(FIFO)原则的一组有序的项.队列在尾部添加元素,并从顶部移除元素.最新添加的元素必须排在队列的末尾.现实中常见的队列就是排队,计算机科学中,常见的例子是打印队列,如文档按顺序打印,第一个发送到打印队列的文档优先被打印. 实现队列 /** *…
如何理解三大运营商发布的<5G消息白皮书>? 2020年4月8日中国移动.中国电信.中国联通携手华为.小米.vivo.OPPO.中兴等11家终端厂商联合发布了<5G消息白皮书>,用来推动传统短消息服务升级. 三大运营商联合发布的<5G消息白皮书>创造了一种怎样的商业模式,我们该如何理解<5G消息白皮书>?本文我们从以下几个方面进行说明: 如何理解5G消息? 运营商为什么要发布<5G消息白皮书>? 如何理解MaaP (Messaging as a…
学习java之基础语法(三) java运算符 计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量.我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 其他运算符 算术运算符 算术运算符用在数学表达式中,它们的作用和在数学中的作用一样.下表列出了所有的算术运算符. 表格中的实例假设整数变量A的值为10,变量B的值为20: 操作符 描述 例子 + 加法 - 相加运算符两侧的值 A + B 等于 30 - 减法…
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 ---------------------------------…
4.列表 列表(list)类型是用来存储多个有序的字符串,如图2-18所示,a.b.c.d.e五个元素从左到右组成一个有序列表,列表中的每个字符串称为元素,一个列表最大可以存储2^32-1个元素.在Redis中,可以对列表两端插入(push)和弹出(pop),还可以获取指定范围的元素列表.获取指定索引下标的元素等(如图2-18和图2-19所示).列表是一种比较灵活的数据结构,它可充当栈和队列的角色,在实际开发中有很多应用场景. 列表类型有如下两个特点: (1)列表中的元素是有序的.这就意味着可以…
以下理论内容copy自Bootstrap中文网 (一个不错的bootstrap学习网站) 导航条 默认样式的导航条 导航条是在您的应用或网站中作为导航页头的响应式基础组件.它们在移动设备上可以折叠(并且可开可关),且在视口(viewport)宽度增加时逐渐变为水平展开模式. 以下代码和注释是我学习过程中的理解 (注意 引入必要的.css 和 .js查看) <!DOCTYPE html> <html lang="zh-CN"> <head> <m…
servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神们可以自动过滤掉.下面的步骤有这样的前提:你的eclipse嵌入了TomCat插件(我们会在Eclipse上操作servlet)或者本地主机已经有安装好某一个版本的TomCat,我这里用的是Tomcat7.0.69. 第一步:创建Dynamic Web Project Eclipse下->new->…
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04-08 声明: 1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应.如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除.…
每周一我都会分享上一周我订阅的技术站点中,和解决问题的过程中阅读到的值得分享的文章. 毕竟个人的阅读量有限,也欢迎大家留言或者私信给我你们阅读到的,对你们前端技术有帮助的任何内容,题材不限,语言不限.可以是技术博客,也可以是知乎或stackoverflow的问答. 如果你觉得这篇分享给你带来了帮助,请不要吝惜的点个赞,或者把这个专栏推荐给你的朋友们,还可以关注我.谢谢啦! 本周推荐 What Is the Best Book for Learning JavaScript? 作者在这里给出了他认…
博客参考:http://www.cnblogs.com/wupeiqi/articles/4943406.html http://www.cnblogs.com/luotianshuai/p/4949497.html 一.简单回顾上次课程内容 主要内容:str|list|dict 类---对象 具体内容可以参考: http://www.cnblogs.com/wupeiqi/articles/5433925.htmlhttp://www.cnblogs.com/wupeiqi/articles/…
神经科学,依靠单一深度学习算法解决不同任务.视觉信号传送到听觉区域,大脑听学习处理区域学会“看”(Von Melchner et al., 2000).计算单元互相作用变智能.新认知机(Fukushima,1980),哺乳动物视觉系统结构,处理图片强大模型架构,现代卷积网络基础(LeCun et al., 1998c).神经网络基于整流线性单元(rectified linear unit)神经单元模型.原始认知机(Fukushima,1975)更复杂.简化现代版,Nair and Hinton(…
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总结 三.创建版本库 两点: 1- 初始化仓库git init 2- 添加git add <file>.提交git commit -m <message> 一点基础: 版本库又名仓库,repository,一个目录,这个目录里面的所有文件都可以被Git管理起来 每个文件的修改.删除,Gi…
1.Aggregation 和SQL一样,EPL也有Aggregation,即聚合函数.语法如下: aggregate_function([all|distinct] expression) aggregate_function就是聚合函数的名字,比如avg,sum等.expression通常是事件流的某个属性,也可以是不同事件流的多个属性,或者是属性和常量.函数之间的运算.举例如下. // 查询最新5秒的Apple的平均价格 select avg(price) as aPrice from A…
本篇深入了解查询优化和服务器的内部机制,了解MySql如何执行特定查询,从中也可以知道如何更改查询执行计划,当我们深入理解MySql如何真正地执行查询,明白高效和低效的真正含义,在实际应用中就能扬长避短. 声明:本人使用的数据库版本为MySql 5.1 一.基本原则:优化数据访问 查询性能低下的最基本原因就是访问了太多数据,一些查询要不可避免地筛选大量的数据,大部分性能欠佳的查询都可以用减少数据访问的方式进行优化. 1.首先分析应用程序是否正在获取超过需要的数据,这通常表现在获取了过多的行或列.…