zoukankan      html  css  js  c++  java
  • c++复习笔记(4)

    这一篇是另一篇各种琐碎东西的笔记。

    类型转换可以通过类型转换函数,或者构造函数来实现。但是一般来说类型转换指的是类型转换函数。

    类型转换函数不需要声明输出类型(因为输出类型是固定的),也没有参数,同时因为不会改变类的内容,所以是const的。

    explicit加到构造函数上,将使得构造函数只能用于创建类的实例,而不能用于自动的类型转换。

    ->符号会一直传递下去而不会消失,所以在重载->的时候,直接返回需要返回的目标的指针就可以了。会再出现->继续运算。

    仿函数。(不太理解,待补充)

    对于模版,类模版要指明模版的类型,但是函数模版可以自行推断类型。

    成员模版就是在类里面建立可以自定义类型的方法。传入的参数要保证该方法可以正常运行。(一般都是构造函数,使得构造函数更有弹性)

    模版特化就是在函数定义的时候制定模版的类型,这样当实际使用时的模版类型与特化的类型一致时,调用特化的函数版本。

    模版偏特化就是部分的模版特化,包括数量上的部分特化,和类型上的部分特化。

    模版模版参数(待补充)。

    数量不定的模版参数(感觉跟变参差不多,待补充)。

    auto自动类型。

    for range是pass by value的,如果需要pass by reference则需要在类型声明上加上引用,比如for(auto& i:list) {}。

    引用的大小和地址都与目标相同,但其实只是假象,其本质仍然是指针。

  • 相关阅读:
    【linux 高级网络应用】1,2-企业IP规划部署实战,ip地址和子网划分
    【linux CCNP】4,5-linux网络及OIS-TCP/IP
    【linux CCNP】3-linux网络抓包和TCP三次握手
    【linux CCNA】1和2-linux网络基础知识入门 与 tcp协议
    CephFS文件储存
    OSD纵向扩容
    CEPH之对象存储
    CEPH之块存储
    ceph_dashboard
    ceph 创建和删除osd
  • 原文地址:https://www.cnblogs.com/wangzhao765/p/9151563.html
Copyright © 2011-2022 走看看