C++基础 (1) 第一天 C++相对C的改进 命名空间 引用
第一天
语法 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指向常量的时候临时开辟了一个空间
字面量:

…

…

字面量:寄存器中临时存的一个数值,计算后放到内存中,它就没了
结论: 如果想对一个字面量做引用的话,只能用const的引用


C++基础 (1) 第一天 C++相对C的改进 命名空间 引用的更多相关文章
- C++基础 (2) 第二天 C++相对C的改进 命名空间 引用
1 昨日回顾 2内联函数 3 默认参数和占位参数 4函数重载 函数重载 就是可以定义多个相同名字的函数 6 类和对象的基本语法 7 类的封装和访问控制 还有一个结论: 封装有两层含义: 把属性和方法进 ...
- 村田噪声抑制基础教程-第一章 需要EMI静噪滤波器的原因
1-1. 简介 EMI静噪滤波器 (EMIFIL®) 是为电子设备提供电磁噪声抑制的电子元件,配合屏蔽罩和其他保护装置一起使用.这种滤波器仅从通过连线传导的电流中提取并移除引起电磁噪声的元件.第1章说 ...
- python 编程基础练习 第一天
python 编程基础练习 第一天: 需求: 1.计算2的38次方,180*0.7输出(精度显示正常), x的y次方,数字倒序输出即345876输出678543,方法越多越好. 2.字符串处理: 1) ...
- Java基础-面向对象第一特性之封装(Encapsulation)
Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...
- 【MM系列】SAP MM模块-基础配置第一篇
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-基础配置第一篇 ...
- Linux 基础入门 第一周9.14~9.20
第一节 Linux系统简介 Linux——操作系统 1.使多个用户从不同的终端同时操作主机(分时操作系统): 2.MINIX是一个功能有限的类似于UNIX的操作系统(UNIX 实现了 TCP/IP 协 ...
- Java基础学习第一天
================每日必读==================== 写代码: 1.明确需求.我需要实现什么需求? 2.分析思路.我需要怎么实现需求? 3.确定步骤.我的每一部分思路需要使 ...
- python 基础篇第一篇
本节内容 1.python介绍 2.发展史 3.python2和python3 4.安装 5.简单程序,hello world程序 6.变量 7.用户输入 8.模块初识 9..pyc是什么? 10.数 ...
- Ruby 基础教程 第一部分总结
第一部分:Ruby 初体验 第一章: Ruby 初探 前言 开头的这一章节讲了一些十分基础的内容,重要的几个话题有: ruby 命令的执行方法 对象.方法的概念 常见的打印方法 ruby 命令的执行方 ...
随机推荐
- java IO(BIO)、NIO、AIO
IO 服务端ServerSocket 客户端Socket 缺点每次客户端建立连接都会另外启一个线程处理.读取和发送数据都是阻塞式的. 如果1000个客户端建立连接将会产生1000个线程 Server端 ...
- HDU 5355 Cake
HDU 5355 Cake 更新后的代码: 今天又一次做这道题的时候想了非常多种思路 最后最终想出了自觉得完美的思路,结果却超时 真的是感觉自己没救了 最后加了记忆化搜索,AC了 好了先说下思路吧.不 ...
- luogu3769 【模板】AC自动机(加强版)
题目大意:有N个由小写字母组成的模式串以及一个文本串T.每个模式串可能会在文本串中出现多次.你需要找出哪些模式串在文本串T中出现的次数最多. 对每个模式串建立一个Trie树.定义一个节点的Fail指针 ...
- php错误抑制符
php错误抑制符 简介 PHP 支持一个错误控制运算符:@.当将其放置在一个 PHP 表达式之前,该表达式可能产生的任何错误信息都被忽略掉. @这个符号在Java里面是注解符号. 实例 <?ph ...
- 循环神经网络(RNN, Recurrent Neural Networks)——无非引入了环,解决时间序列问题
摘自:http://blog.csdn.net/heyongluoyao8/article/details/48636251 不同于传统的FNNs(Feed-forward Neural Networ ...
- nyoj--92--图像有用区域(模拟)
图像有用区域 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 "ACKing"同学以前做一个图像处理的项目时,遇到了一个问题,他需要摘取出图片中某个黑 ...
- Java-JDK:JDK清单
ylbtech-Java-JDK:JDK清单 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 6.返回顶部 作者:ylbtech出处:http://y ...
- Mysql慢查询和慢查询日志分析利器–mysqlsla
1.安装mysqlsla Source code wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gz tar zvxf mysqlsl ...
- BZOJ 4262 线段树+期望
思路: 把询问离线下来,查询max和查询min相似,现在只考虑查询max 令sum[l,r,x]表示l到r内的数为左端点,x为右端点的区间询问的答案 那么询问就是sun[l1,r1,r2]-sum[l ...
- 让.bashrc文件在终端自动生效
修改了.bashrc文件,想在打开终端时默认路径变成桌面路径.代码如下 cd ~/desktop export PATH="/Users/nola/local:$PATH" 但是每 ...