博客
关于我
C++学习笔记十
阅读量:304 次
发布时间:2019-03-01

本文共 985 字,大约阅读时间需要 3 分钟。

C++学习笔记十

推荐一个github的开源

  1. const
  2. 顺序容器之关系操作符
  3. 容器大小

const

const 类型有类型检查

const 类型默认为文件局部变量

cont char* a:指向的变量不可修改值,指针值可改变

char * const a:指针不可改变值(常指针),指向的变量值可变
const char * const a:常指针、常变量

常指针必须进行初始化

const T &a:引用,不可变,增加函数效率(对对象使用)

类中的const几项规则:

  • const数据成员
    const数据成员的初始化方式
  1. 在定义中进行初始化const int dataMember = 1;
  2. 在构造函数里面使用初始化列表进行初始化Test::Test(i):dataMember(i){}
  3. 在实现文件中使用const int Test::dataMember = 1进行初始化
  4. 和static结合,也可以直接在定义中进行初始化static const int dataMember = 10

C++中,static类型的成员数据不能在类内进行定义!!!只能在实现文件中使用int Test::dataMember = 1进行初始化!但是和const配合,则可以直接在类内进行初始化

  • const成员函数
  1. 什么是const成员函数?在函数的参数列表后面、大括号前增加一个const关键字
  2. 什么样的函数使用const成员函数?任何不会修改数据成员的函数都应该声明为const类型
  3. 只有const成员函数才有资格操作常量或常对象
  4. const对象只能访问const成员函数,且默认调用const成员函数
  5. const成员函数不能调用非const成员函数

顺序容器之关系操作符

所有容器类型都支持用关系操作符来进行两个容器之间的比较

容器的比较是基于容器内元素的比较,容器的比较使用了元素类型定义的同一个关系操作符。若元素无该类型的操作符,则容器不能进行该类型的比较

容器大小

所有容器都提供

  1. size():返回元素个数
  2. max_size():返回最多可容纳的元素个数
  3. empty():容器是否为空
  4. resize(n):调整容器大小,使之能容纳n个元素,若过大则删除多于的元素,过小则初始化新元素
  5. resize(n, t):初始化的新元素的值为t

resize可能会使得迭代器失效

转载地址:http://lfao.baihongyu.com/

你可能感兴趣的文章
mysql [Err] 1436 - Thread stack overrun: 129464 bytes used of a 286720 byte stack, and 160000 bytes
查看>>
MySQL _ MySQL常用操作
查看>>
MySQL – 导出数据成csv
查看>>
MySQL —— 在CentOS9下安装MySQL
查看>>
MySQL —— 视图
查看>>
mysql 不区分大小写
查看>>
mysql 两列互转
查看>>
MySQL 中开启二进制日志(Binlog)
查看>>
MySQL 中文问题
查看>>
MySQL 中日志的面试题总结
查看>>
mysql 中的all,5分钟了解MySQL5.7中union all用法的黑科技
查看>>
MySQL 中的外键检查设置:SET FOREIGN_KEY_CHECKS = 1
查看>>
Mysql 中的日期时间字符串查询
查看>>
mysql 中索引的问题
查看>>
MySQL 中锁的面试题总结
查看>>
MySQL 中随机抽样:order by rand limit 的替代方案
查看>>
MySQL 为什么需要两阶段提交?
查看>>
mysql 为某个字段的值加前缀、去掉前缀
查看>>
mysql 主从
查看>>
mysql 主从 lock_mysql 主从同步权限mysql 行锁的实现
查看>>