前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++primer学习笔记(三)

C++primer学习笔记(三)

作者头像
震八方紫面昆仑侠
发布2020-07-23 14:47:53
5420
发布2020-07-23 14:47:53
举报
  • 含有可变形参的函数:fun(parm_list, ...)与省略符对应的实参暂停类型检查。
  • 返回值为viod的函数只能使用return;不能return expression。return;也只能用于返回值为void的函数。
  • 静态变量只在初次调用时初始化,static size_t ctr=0只执行一次。
  • 内联函数避免函数调用的开销:编译时展开为函数体中的表达式,免去函数调用的寄存器保存恢复、复制实参跳转等。
  • 内联函数定义在头文件。编译器将类内定义的成员函数当做内联函数。
  • 每个成员函数都有一个隐含的this指针。假设有成员函数bool same_isbn(..) const 最后的const改变了隐含的this形参的类型,这种成员函数叫常量成员函数,无法修改对象本身。const的对象,指针引用只能调用常量成员函数。
  • 没有前缀的成员都被假定为this在调用。
  • 默认构造函数按变量初始化规则初始化类中所有成员【内置类型作为局部变量时不初始化】。
  • 指向函数的指针:函数类型由返回值和形参决定,与函数名无关。函数名本身就是指针。fun==&fun Fcn pf=add pf(1,2)==(*pf)(1,2)
  • 函数的形参可以是指向函数的指针:FUN( bool(string&, string&) ) 或 FUN( bool (*)(string&, string&) )。FUN是函数名,FUN(这里都是形参)
  • iostream定义读写控制窗口的类;fstream定义读写已命名文件的类;sstream定义的类型用于读写内存中的string对象。前面加上w支持wchar_t类型。
  • 流的状态可以由bad,fail,eof,good函数获得,cin.fail()。
  • 每一个流都关联一个缓冲区,崩溃的程序不会自动刷新缓冲区,如果用输出调试程序,确保每次输出都flush或endl。tie函数可将istream和ostream绑一起,输入前首先会刷新输出。
  • fstream 既要定义对象又要捆绑文件【open或初始化时】。如果想用一个文件流对象读取多个文件,必须close()并clear()。所有流都可以用<<操作符。
  • 设置或清除多个二进制位状态:可以多次调用setstate,clear;可以用位或操作符在一次调用中传递多个状态的值。A|B生成了一个值,其对应于A和B的位都打开了,设置为1,其他都是0.
  • 引用不支持一般意义的赋值运算,没有容器的元素是引用。容器的容器< <之间必须有空格否则会被认为是<<移位操作符。
  • vector deque支持通过元素的位置实现随机访问,所以迭代器可以实现算术和关系运算。list容器的迭代器不支持算术运算(加减法iter+n,iter1+iter2),也不支持关系运算(<= < >= >【是元素的比较,类似于string】),只支持++ -- == !=。
  • 由容器定义的类型:size_type iterator value_type reference...
  • list deque提供了push_front()。容器元素都是副本。insert push可能导致迭代器失效,当编写循环将元素插入到vector deque时,必须更新迭代器。size()返回个数,empty()返回布尔值。
  • 如果容器c为空,c.front() c.back()操作未定义!c[n]和c.at(n)只适用于vector deque,n<0或n>=c.size()操作未定义【c.at(n)会抛out_of_range】。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MySQL从删库到跑路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档