博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++笔记(2017/2/9)
阅读量:5068 次
发布时间:2019-06-12

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

this指针

  • this指针作用就是指向成员函数所作用的对象。
  • 非静态成员函数中可以直接使用this来代表指向该函数作用的对象的指针。
  • 静态成员函数中不能使用this指针。

静态成员 static

  • 定义:在定义前面加了static关键字的成员。
  • 普通成员变量每个对象有各自的一份,而静态成员变量一共就一份,为所有对象共享。
  • 普通成员函数必须具体作用于某个对象,而静态成员函数并不具体作用于某个对象。
  • 静态成员不需要通过对象就能访问。
  • 如何访问静态成员:
    • 类名::成员名。
    • 对象名.成员名。
    • 指针->成员名。
    • 引用.成员名 。
  • 静态成员变量本质上是全局变量,即使一个对象都不存在,类的静态成员变量也存在。
  • 静态成员函数本质上是全局函数。
  • 设置静态成员这种机制的目的是将和某些类紧密相关的全局变量和函数写到类里面,看上去像一个整体,易于维护和理解。
  • 在静态成员函数中,不能访问非静态成员变量,也不能调用非静态成员函数。

成员对象和封闭类

  • 有成员对象的类叫封闭类
  • 封闭类对象生成时,先执行所有对象成员的构造函数,然后才执行封闭类的构造函数。
  • 对象成员的构造函数调用次序和对象成员在类中的说明次序一致,与它们在成员初始化列表中出现的次序无关。
  • 当封闭类的对象消亡时,先执行封闭类的析构函数,然后再执行成员对象的析构函数。次序和构造函数的调用次序相反。
  • 封闭类的对象,如果是用默认复制构造函数初始化的,那么它里面包含的成员对象, 也会用复制构造函数初始化。

友元 friends

  • 友元函数: 一个类的友元函数可以访问该类的私有成员。
  • 友元类:如果A是B的友元类,那么A的成员函数可以访问B的私有成员。
  • 友元类之间的关系不能传递,不能继承。

常量成员函数

  • 在类的成员函数说明后面可以加const关键字,则该成员函数成为常量 成员函数。
  • 常量成员函数内部不能改变属性的值,也不能调用非常量成员函数。
  • 在定义常量成员函数和声明常量成员函数时都应该使用const 关键字。
  • 如果一个成员函数中没有调用非常量成员函数,也没有修改成员变量的值,那么,最好将其写成常量成员函数。
  • 两个函数,名字和参数表都一样,但是一个是const,一个不是,算重载。
  • mutable成员变量可以在const成员函数中被修改。

转载于:https://www.cnblogs.com/jhy16193335/p/8434287.html

你可能感兴趣的文章
设计模式IOS篇-第二章:委托模式
查看>>
beego——日志处理
查看>>
【连载】 FPGA Verilog HDL 系列实例--------十进制加减法计数器
查看>>
MySQL中MyISAM与InnoDB区别及选择
查看>>
DataGrid 上修改數據
查看>>
nginx php-fpm安装配置(转)
查看>>
重读The C programming Lanuage 笔记一:类型转换
查看>>
复杂类型的属性注入
查看>>
回家最好最快路线
查看>>
mysql面试题
查看>>
初识Hadoop
查看>>
window.open()打开子页面并从父页面取值
查看>>
软件测试系列--通用测试用例写作
查看>>
SQL语句题
查看>>
Android消息机制
查看>>
iOS应用支持IPV6,就那点事儿
查看>>
mysql命令行导入和导出数据
查看>>
css中span元素的width属性无效果原因及多种解决方案
查看>>
解决IIS6.0 无法访问
查看>>
JQuery-UI Dialog下使用服务器端按钮失效
查看>>