cpp_local_class - ShenYj/ShenYj.github.io GitHub Wiki

局部类

  • 在一个函数内部定义的类,称为局部类
  • 局部类的特点
    • 作用域仅限于所在的函数内部
    • 其所有的成员必须定义在类内部,不允许定义static成员变量(static定义的成员变量要求是在外面初始化,矛盾了)
    • 成员函数不能直接访问函数的局部变量(static 变量除外)
int m_age1 = 0;

voie test() {

    static int s_age2 = 0;
    int age3 = 0;

    /// 局部类
    class Point {
        int m_x;
        int m_y;
    public:
        static void display() {
            
            /// 可以访问 全局变量
            m_age1 = 10;
            
            /// 可以访问 static成员变量
            s_age2 = 20; 

            //age3 = 30; 不能访问普通局部变量
        }
    };
}
⚠️ **GitHub.com Fallback** ⚠️