笔记: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. 004Java的一些基本概念

    004Java的一些基本概念 1.Java特性和优势 Java至少具有以下特性: 简单性(没有头文件.没有指针运算.也没有分配内存等操作) 面向对象(万物皆对象) 可移植性(一次编写,到处运行 Wri ...

  2. Java中简单易懂的HashMap面试题(面试必备)

    这篇文章仅限小编个人的理解,小编不是Java方向的,只是对Java有很高的学习兴趣 如果有什么不对的地方还望大佬指点 HashMap的底层是数组+链表,(很多人应该都知道了) JDK1.7的是数组+链 ...

  3. Hive:FAILED: LockException [Error 10280]: Error communicating with the metastore

    1.问题示例 使用hive直接选择查看表中数据报错,而相同语句在spark-sql却不报错. 实在无力吐槽hive了,因它受伤太多了. (1)使用hive hive (test)> select ...

  4. 快速乘_c/c++

    快速乘的使用主要是这种情形:要计算(a * b) % p时,发现a * b爆 long long 了,而a, b, p没有爆 long long   快速乘的原理:   比如当我们需要要计算3 * 2 ...

  5. keycloak(转载)

    # 生成KEYSTORE.JKS keytool -genkeypair -alias keycloak.me -keyalg RSA -keystore keycloak.jks -validity ...

  6. loadrunner添加头部

    web_add_auto_header("token_id", "{token_id}"); 或 web_add_header("token_id&q ...

  7. python 修改excel文件内容(修改excel文件日期每天保存一份)

    import xlrd import xlwt from xlutils.copy import copy import time import datetime def setStyle(name, ...

  8. OSPF故障诊断

  9. LeetCode 周赛 336,多少人直接 CV?

    本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 大家好,我是小彭. 今天早上是 LeetCode 第 336 场周赛,你参加了吗?这场周赛整体质量比较高,但 ...

  10. 记录hive一次数据倾斜问题的解决以及思考总结

    解决数据倾斜是大数据开发中比较重要的能力,这个现象指的是分布式集群中,由于数据分发的不当,导致某个节点要处理的错误过多,导致整个计算机任务迟迟结束不了,甚至可能节点出现OOM使得任务失败 处理数据倾斜 ...