笔记:C++学习之旅---初识C++

         博主也是一个新手,学习编程才一年左右,刚大学毕业不久,以前在学校学习的语言主要是C,本人是从嵌入式学起的!我现在从事的公司主要是C++,所以我也开始了自学之路,以下是我学习过程的一些笔记,有的是截取书上的,有的是自我总结的,出现一些错误也请见谅,同时也是为了激励我自己以及和大家一起学习!!!
C:面向结构化(或者说面向过程),将大程序拆分成若干小结构(模块),每个结构完成一个或多个功能,所以结构集合起来就完成了一个大功能。
C++:面向对象,有能力将大程序分成若干个对象,每个对象中在封装部分数据和实现功能方法,一个对象访问另一个对象的数据,必须挣得对象的同意,面向对象中数据的改变也不影响其他对象,从而解决了安全性问题,另一方面,面向对象允许将具有相同特征的对象划分为一类,而同一类的对象又可以继续向下派生,父生子,子生孙,代码不经修改即可重复利用,从而实现了代码的重用。可重用性、多态、封装、继承。
C++可重用性:将相关的数据和结构看成一个整体,利用已有的代码创造新的代码(比如说游戏要为一个怪物添加一个新功能,C必须重新改写各个模块功能然后加上新功能来实现,而C++只需要在已有的数据上面添加即可
)。
C++多态性:指不同的对象采用相同的方法会导致不同的结果或者行为(比如不同的球员采用同一方式进门,技术不同那么概率也不同)。

iostream(输入输出流)是个标准库,包含了众多的成员函数,每个函数都有其自身作用


”endl“换行符号与"\n"的区别是”endl“除了具备“\n”换行功能外,还调用输出流的flush函数,刷新缓冲区,让数据直接写入文件或者屏幕上。

std::是个名称空间标识符,C++标准库中的函数或者对象是在命名空间std中定义的,所以我们要使用标准库中的函数或者对象都要用std来限定。
       std都是要调用C++标准库时使用
     如:使用标准库文件iosteam时,要加上std;使用非标准库文件iostream.h,不用写。

    #include<iostream>
    using namepace std; //使用名字空间就不用重复写std;

cout(读see-out):是标准库提供的一个对象    标准输出  打印语句的。
cin(读see-in):标准输入
cerr(读see-err):标准错误,来输出警告和错误消息的。
clog(读see-log):用来输出程序运行时的一般性信息。

iostream.h为非标准的输入输出流,这个.h的头文件是C语言格式的,由于当时还没有名字空间这个说法,所以也就不存在std这个名字空间标识符。自然用isotream.h也就用不着std或者using namespace std了;
iostream 为标准输入输出流,它是C++规范的带有名称空间的头文件,它包含在std名字空间内
而iostream流里又包含cin和cout输入输出对象,所以使用cout的时候必须加上std。

名字空间的作用
C++里引入名字空间的目的是为了避免和减少命名冲突,一旦一个程序写大了,就喊难避免重名,特别是多人合作的情况下,这就是引入namespace名字空间的好处。

C++有六种数据类型
他们分别是布尔型(bool)、字符型(char)、双字符型(wchar_t)、整型(int)、单精度浮点型(float)和双精度浮点型(double)。
bool类型占一个字节
char类型占一个字节
wchar_t类型占一个字节
float类型占4个字节
double类型占8个字节
int 类型占4个字节
short  类型占2个字节
long 类型占4个字节

8位二进制数是一个字节,那么4个二进制数字就是半个字节比如(1010 0101)中,1010是前半个字节,叫高8位,0101为后半个字节,叫低8位。
大端模式和小端模式
大端模式:是指数据的低位(就是权值较小的后面那几位)保存在内存的高地址中,而数据的高位,保存在内存的低地址中
小端模式:是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。



笔记:C++学习之旅---初识C++的更多相关文章

  1. 笔记-JavaWeb学习之旅7

    JavaScript基础 概念:一门客户端脚本语言,运行在客户端浏览器中,每一个浏览器都有JavaScript的解析引擎,是一个脚本语言,不需要编译,直接就可以被浏览器解析执行. JavaScript ...

  2. 笔记-JavaWeb学习之旅5

    CP30的演示 package cn.itcast.datasourcejdbc; import com.mchange.v2.c3p0.ComboPooledDataSource; import j ...

  3. 笔记-JavaWeb学习之旅19

    Redis:redis是一款高性能的NOSQL系列的非关系型数据库 NOSQL: Not Only SQL ,意即"不仅仅是SQL",是一项全新的数据库理念,泛指非关系型数据库 r ...

  4. 笔记-JavaWeb学习之旅18

    AJAX:ASynchronous JavaScript And XML 异步的JavaScript 和XML 异步和同步:客户端和服务器端相互通信的基础上 同步:客户端操作后必须等待服务器端的响应, ...

  5. 笔记-JavaWeb学习之旅17

    1.过滤选择器 首元素选择器:first 获得选择的元素中的第一个元素 尾元素选择器:last获得选择元素中的最后一个元素 非元素选择器:not(selector) 不包括指定内容的元素 偶数选择器: ...

  6. 笔记-JavaWeb学习之旅16

    增强对象的功能 动态代理:在内存中形成代理类 实现步骤: 代理对象和真实对象实现相同的接口 代理对象 = Proxy.newProxyInstance(); 使用代理对象调用真实对象的方法 增强方法 ...

  7. 笔记-JavaWeb学习之旅15

    Filter:过滤器 概念:当访问服务器的资源是,过滤器可以将请求拦截下来,完成一些特殊的功能 快速入门: 步骤: 定义一个类,实现接口Filter 复写方法 配置拦截路径 package com.d ...

  8. 笔记-JavaWeb学习之旅14

    JSTL:JavaServer Pages Tag Library JSP标准标签库 if标签 <%@ page import="java.util.ArrayList" % ...

  9. 笔记-JavaWeb学习之旅10

    Servlet server applet运行在服务器端的小程序,servlet就是一个接口,定义了Java类被浏览器访问到的规则(Java类重写这个接口,就可以被浏览器(tomcat)识别) Ser ...

  10. 笔记-JavaWeb学习之旅13

    验证码案列 昨天晚上出现的500错误原因在于验证码没有获取到,获取验证码是应该获取的是共享域中的验证码,而我把获取值得键给写成了jsp中的键,而不是内存生成图片中,然后把图片上传到共享域中的键.这两个 ...

随机推荐

  1. 2020.11.14 typeScript声明空间

    在ts中存在两种声明空间: 类型声明空间和变量声明空间. 类型声明空间: 1. class People {} 2. interface People {} 3. type People = {} 变 ...

  2. k8s基本操作

    注意:k8s的很多操作需要指定命名空间,如果不指定,默认default的命名空间,很多东西就查不出来了 kubectl get cs # 查看集群状态kubectl get nodes # 查看集群节 ...

  3. react+ant-design-proTable 设置搜索条件中的默认值

    需求: 这个规则组ID的 下拉列表是通过向后端请求获取的,如何设置自定义渲染列表,并且默认有值 let groupLists = [] as any, //规则组列表 defaultValue = ' ...

  4. Hadoop-HA节点介绍

    设计思想 hadoop2.x启用了主备节点切换模式(1主1备) 当主节点出现异常的时候,集群直接将备用节点切换成主节点 要求备用节点马上就要工作 主备节点内存几乎同步 有独立的线程对主备节点进行监控健 ...

  5. Android笔记--在活动之间传递消息

    显式Intent和隐式Intent Intent--各个组件信息沟通的桥梁 组成部分: 显式Intent:--精确匹配 具体实现: 1.在Intent的构造函数中指定 2.调用意图对象的setClas ...

  6. svn提交规范

    本文档参考了Git提交规范,旨在规范使用SVN进行代码版本管理时的提交操作. 提交前的准备 1. 检查代码 在提交代码前,请先进行必要的代码检查,确保代码的正确性.可读性和可维护性.可以使用代码质量管 ...

  7. python创建线程传参误区记录

    创建线程可以使用threading模块中的Thread子类: 其中Thread子类允许的参数如下: (self, group=None, target=None, name=None, args=() ...

  8. 自己动手从零写桌面操作系统GrapeOS系列教程——16.封装打印字符串函数

    学习操作系统原理最好的方法是自己写一个简单的操作系统. 在上一讲中我们向屏幕打印字符串"GrapeOS"用了十几行汇编代码,如果要输出的字符比较多,这种方法太繁琐了.本讲我们将打印 ...

  9. CF1141 Div3 欢乐信心赛

    非常轻松的比赛,连我这样的菜鸡也感到充满力量. A 用类似于质因数分解的操作搞一搞即可. B 将环复制一遍. C 可以发现 \(q\) 就是差分数组.那么差分数组之和最大的地方就是原序列的最大值,为 ...

  10. 基于深度学习的鸟类检测识别系统(含UI界面,Python代码)

    摘要:鸟类识别是深度学习和机器视觉领域的一个热门应用,本文详细介绍基于YOLOv5的鸟类检测识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择各种鸟类图 ...