• C++学习-类域、友元、运算符重载、对象的生存期,可见域,作用域(1)


    一、类的作用域(类作用域、类名作用域、对象作用域)

    1、在类中定义的成员变量和成员函数的作用域是整个类,可以在不同的类中使用相同的成员名

    2、不能从外部直接访问类的任何成员,public-对象名来调用,static成员函数-指定类名调用

    3、发生屏蔽现象,类成员可见域可能小于作用域,可用this指针或者类名::形式访问。

    二、类的作用域和可见域

    1、全局作用域:在函数和其他类的外部定义的类称为全局类,全局类具有全局作用域

    2、类作用域:嵌套类,public(AB的作用域可认为一样)和private (AB作用域认为不一样)

    3、块作用域:局部块,作用域块内

    4、类名也存在覆盖:覆盖原则,::访问外部类,外部类::嵌套类

    三、对象的生存期,可见域,作用域

    1、类名无生存期,只有可见域和作用域

    2、对象的生存期随着对象的创建而产生,随着对象的撤销而消失

    3、对象的生存期,可见域,作用域取决于对象的位置

    四、先定义后实例化

    1、类的定义要在对象的声明之前,因为编译器要知道需要为类分配多大的内存空间,仅仅对类声明是不够的。

    class B;

    B objectB;//错误

    class B

    {

    .......//B的定义

    };

    2、如果不创建B类的对象,而仅仅声明一个指向类型B的指针(或引用),是可行的。

    class B;//声明

    B* pb=NULL;//创建B类的对象,对

    B* pb=new B;//错

    class B

    {};

    五、对象内存释放与堆内存

    1、养成new/delete,malloc/free配对编程的习惯,集是释放已经无用的内存。

  • 相关阅读:
    web 学习资源整理
    CodeSmith 学习资料收集
    常用 T_SQL 语句
    SQL Server 2000查询分析器自定义查询快捷键
    插入标识列 identity_insert
    c# 上传FTP文件
    (.Net 3.5Sp1)WebForm使用System.Web.Routing
    SPQuery.ViewAttributes
    ChatterBot之linux下安装mongodb 02
    linux端口开放指定端口的两种方法
  • 原文地址:https://www.cnblogs.com/lyp1010/p/11731042.html
Copyright © 2020-2023  润新知