第一天

语法 STL 数据结构  设计模式…

2 C++语言的间接

C++ = C语言+面向对象

本贾尼

语言分类:

不关心效率 只关心架构:java/脚本语言

效率:(内存要自己管理了,操作指针)C++

3 C++的hello

4 C++的命名空间

5  C++对C语言的增强-全局变量-struct-函数检测

6 bool类型

7 c++对三目运算符的增强

C++中

返回的是a的别名a

//  举例(a<b? a: b) =30

这句话 在C语言编译器中报错”表达式不能做左值”

因为在C语言编译器中,表达式最终返回的是一个数值 而不是一个地址

在C++中就不会报错,C++中表达式 返回的是a变量的别名

(语法糖

8 三目运算分作为左值需要注意

9 const增强

真正的常量

(在 C++中 就不会报错

10 const 和#define的区别

define和const的阶段不一样 define是预处理器 const是编译器处理的

11枚举类型的增强

12中午回顾

namespace 关键字

Boolean类型 只要赋值为非0 就是1

C语言会报错 C++不会报错

13 引用的基本概念

14 引用作为函数参数

15 引用的本质

编译器在取值和赋值的时候自动做了&和*的操作 本质是一个常指针

结论:

// 在研究引用的时候,可以将引用理解为一个 常指针

// 在理解的引用的时候,可以将引用理解为一个变量的别名 (否则读代码的时候容易懵

有大小 4字节 必须初始化 不能被改变

16 引用作为函数返回值

当函数的返回值 是一个局部变量的引用的时候 不能再用引用来接收

因为 局部变量执行完之后 值会被销毁

(注意值传递和 用 引用接受的区别)

17 引用作为函数返回值可以当左值

当引用作为函数的返回值的时候,只要这个引用是合法的,就可以当左值

传统的二级指针的方法

使用引用

19 const引用

注意指针p指向常量的时候临时开辟了一个空间

字面量:

https://zh.wikipedia.org/wiki/%E5%AD%97%E9%9D%A2%E5%B8%B8%E9%87%8F_(C%E8%AF%AD%E8%A8%80)#%E7%94%A8%E6%88%B7%E5%AE%9A%E4%B9%89%E7%9A%84%E5%AD%97%E9%9D%A2%E9%87%8F

字面量:寄存器中临时存的一个数值,计算后放到内存中,它就没了

结论: 如果想对一个字面量做引用的话,只能用const的引用

C++基础 (1) 第一天 C++相对C的改进 命名空间 引用的更多相关文章

  1. C++基础 (2) 第二天 C++相对C的改进 命名空间 引用

    1 昨日回顾 2内联函数 3 默认参数和占位参数 4函数重载 函数重载 就是可以定义多个相同名字的函数 6 类和对象的基本语法 7 类的封装和访问控制 还有一个结论: 封装有两层含义: 把属性和方法进 ...

  2. 村田噪声抑制基础教程-第一章 需要EMI静噪滤波器的原因

    1-1. 简介 EMI静噪滤波器 (EMIFIL®) 是为电子设备提供电磁噪声抑制的电子元件,配合屏蔽罩和其他保护装置一起使用.这种滤波器仅从通过连线传导的电流中提取并移除引起电磁噪声的元件.第1章说 ...

  3. python 编程基础练习 第一天

    python 编程基础练习 第一天: 需求: 1.计算2的38次方,180*0.7输出(精度显示正常), x的y次方,数字倒序输出即345876输出678543,方法越多越好. 2.字符串处理: 1) ...

  4. Java基础-面向对象第一特性之封装(Encapsulation)

    Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...

  5. 【MM系列】SAP MM模块-基础配置第一篇

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-基础配置第一篇   ...

  6. Linux 基础入门 第一周9.14~9.20

    第一节 Linux系统简介 Linux——操作系统 1.使多个用户从不同的终端同时操作主机(分时操作系统): 2.MINIX是一个功能有限的类似于UNIX的操作系统(UNIX 实现了 TCP/IP 协 ...

  7. Java基础学习第一天

    ================每日必读==================== 写代码: 1.明确需求.我需要实现什么需求? 2.分析思路.我需要怎么实现需求? 3.确定步骤.我的每一部分思路需要使 ...

  8. python 基础篇第一篇

    本节内容 1.python介绍 2.发展史 3.python2和python3 4.安装 5.简单程序,hello world程序 6.变量 7.用户输入 8.模块初识 9..pyc是什么? 10.数 ...

  9. Ruby 基础教程 第一部分总结

    第一部分:Ruby 初体验 第一章: Ruby 初探 前言 开头的这一章节讲了一些十分基础的内容,重要的几个话题有: ruby 命令的执行方法 对象.方法的概念 常见的打印方法 ruby 命令的执行方 ...

随机推荐

  1. logstash-input-jdbc实现mysql 与elasticsearch实时同步(ES与关系型数据库同步)

    引言: elasticsearch 的出现使得我们的存储.检索数据更快捷.方便.但很多情况下,我们的需求是:现在的数据存储在mysql.oracle等关系型传统数据库中,如何尽量不改变原有数据库表结构 ...

  2. SLES documentation

    https://www.suse.com/documentation/sles11/book_sle_admin/data/sec_basicnet_yast.html

  3. Spring MVC-表单(Form)标签-复选框(Checkbox)示例(转载实践)

    以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_checkbox.htm 说明:示例基于Spring MVC 4.1.6. 以下示 ...

  4. UVa Problem 10051

    这题有点类似LIS,由于颜色最多100种,所以只需建立一个100的数组,按对立面的关系以某种颜色为向上面的最大值就可以了.   #include <iostream> #include & ...

  5. Java&amp;&amp;(面试题)初始化顺序总结

    1  无继承情况下的Java初始化顺序: class Sample {       Sample(String s)       {             System.out.println(s) ...

  6. iOS开发——远程消息推送的实现

    在我们使用App的过程中.总是会收到非常多的消息推送.今天我们就要来实现这个功能.首先消息推送分为本地消息推送和远程消息推送.而当中又以远程消息最为经常使用. 可是在推送远程消息之前.有两个前提条件. ...

  7. Java基础:异常捕获顺序

    转载请注明出处:jiq•钦's technical Blog public voidtestException(){ int a[] = {1,2,3};int q = 0; try{ for(int ...

  8. redis配置文件参数详解

    配置文件参数说明: 1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no 2. 当Redis以守护进程方式运行时,Redis默认会把pi ...

  9. 全能VIP音乐在线解析

    浏览器安装暴力猴扩展即可使用 // ==UserScript== // @name 全能VIP音乐在线解析 // @version 0.0.10 // @homepage https://greasy ...

  10. 更换WordPress后台登录地址

    在后台找到wp-content—themes—twentyfifteen(当前的网站主题)—functions.php 在代码的最下面加入以下代码: //后台唯一登录地址 add_action('lo ...