發新話題

C++ Gossip - 物件基礎《封裝的進階議題》區域類別

C++ Gossip - 物件基礎《封裝的進階議題》區域類別

類別也可以定義於函式之中,稱之為區域類別(Local classes),定義於函式中的區域類別只在該函式範圍(Scope)中有作用,也因此區域類別的宣告與定義都必須在該函式中完成。

區域類別中的成員通常宣告為"public",作用常是為了方便資料的群組管理,區域類別的定義常是很簡單的,例如:
#include <iostream>
using namespace std;


int main() {
    // 區域類別
    class Point {
    public:
          int x;
          int y;
          Point(int x, int y) {
              this->x = x;
              this->y = y;
          }
    };
   
   
    Point p(10, 10);

    cout << "(x, y) = ("
        << p.x << ", "
        << p.y << ")"
        << endl;
   
    return 0;
}

執行結果:
(x, y) = (10, 10)

區域類別不可以直接存取所在函式中的變數,可以存取外圍類別的私用成員。

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。