zoukankan      html  css  js  c++  java
  • C++静态成员函数,静态成员变量,运算符重载

    当一个函数不属于某个具体的实例而属于整个类,那么这个函数最好写成静态成员函数,这样就可以直接用类名调用

    Class::Func()

    对于一般成员函数当用obj.Func()调用函数时,编译器会将其编译成TypeOf(obj)::Func()的样式,所以静态成员函数不能这么调用

    友元函数和静态成员函数都不属于类,调用时都不会传入this,所以不可以使用

    只让本类对象共享数据,让成员变量声明为static,静态数据成员的初始化要放在外面,class::name = value;因为其属于类,所以分配空间是在外面定义的时候分配,而不是在对象定义时分配

    c++对匿名对象有优化,优化成直接创建新对象而不用再建立一个中间对象。匿名对象编译器可以尽早的释放,好的编译器可以优化

    一般的单目:fanhuizhi operator+(){}

    特殊一点的带哑元 fanhuizhi operator++(int/*有int表示后加,无int表示前加*/)

    类型转换运算符的重载 fanhuizhi operator double(){},因为返回值类型和函数名一样,所以c++可以允许不写返回值类型,加boolalpha可以见Bool类型转换为true false,再缓过来就加noboolalpha

  • 相关阅读:
    2020寒假简记
    感知神经网络模型与学习算法
    信息检索模型与评估
    Diffie-Hellman密钥交换
    RSA密码体制
    MySQL基准测试(benchmark)
    MySQL数据引擎
    MySQL 多版本并发控制(MVCC)
    MySQL事务管理
    利用dotnet restore 导入本地 .nupkg 包
  • 原文地址:https://www.cnblogs.com/yican/p/3925048.html
Copyright © 2011-2022 走看看