博客
关于我
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下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>
MySQL中auto_increment有什么作用?(IT枫斗者)
查看>>
MySQL中B+Tree索引原理
查看>>
mysql中cast() 和convert()的用法讲解
查看>>
mysql中datetime与timestamp类型有什么区别
查看>>
MySQL中DQL语言的执行顺序
查看>>
mysql中floor函数的作用是什么?
查看>>
MySQL中group by 与 order by 一起使用排序问题
查看>>
mysql中having的用法
查看>>
MySQL中interactive_timeout和wait_timeout的区别
查看>>