C ++クラスとオブジェクト


C ++クラス/オブジェクト

C ++はオブジェクト指向プログラミング言語です。

C ++のすべては、その属性とメソッドとともに、クラスとオブジェクトに関連付けられています。例:実生活では、車はオブジェクトです。車には、重量や色などの属性と、ドライブやブレーキなどの 方法があります。

属性とメソッドは基本的に、クラスに属する変数 関数です。これらはしばしば「クラスメンバー」と呼ばれます。

クラスは、プログラムで使用できるユーザー定義のデータ型であり、オブジェクトコンストラクター、またはオブジェクトを作成するための「青写真」として機能します。


クラスを作成する

クラスを作成するには、次のclassキーワードを使用します。

""というクラスを作成しますMyClass

class MyClass {       // The class
  public:             // Access specifier
    int myNum;        // Attribute (int variable)
    string myString;  // Attribute (string variable)
};

例の説明

  • classキーワードは、というクラスを作成するために使用されますMyClass
  • publicキーワードはアクセス指定子であり、クラスのメンバー(属性とメソッド)がクラスの外部からアクセス可能であることを指定します。アクセス指定子については、後で詳しく説明します
  • クラス内には、整数変数 myNumと文字列変数がありますmyString変数がクラス内で宣言される場合、それらは属性と呼ばれます。
  • 最後に、クラス定義をセミコロンで終了し;ます。

オブジェクトを作成する

C ++では、オブジェクトはクラスから作成されます。、という名前のクラスをすでに作成しているMyClassので、これを使用してオブジェクトを作成できます。

のオブジェクトを作成するにはMyClass、クラス名に続けてオブジェクト名を指定します。

クラス属性(myNumおよび)にアクセスするには、オブジェクトでmyStringドット構文()を使用します。.

""というオブジェクトを作成しmyObj、属性にアクセスします。

class MyClass {       // The class
  public:             // Access specifier
    int myNum;        // Attribute (int variable)
    string myString;  // Attribute (string variable)
};

int main() {
  MyClass myObj;  // Create an object of MyClass

  // Access attributes and set values
  myObj.myNum = 15; 
  myObj.myString = "Some text";

  // Print attribute values
  cout << myObj.myNum << "\n";
  cout << myObj.myString;
  return 0;
}

複数のオブジェクト

1つのクラスの複数のオブジェクトを作成できます。

// Create a Car class with some attributes
class Car {
  public:
    string brand;   
    string model;
    int year;
};

int main() {
  // Create an object of Car
  Car carObj1;
  carObj1.brand = "BMW";
  carObj1.model = "X5";
  carObj1.year = 1999;

  // Create another object of Car
  Car carObj2;
  carObj2.brand = "Ford";
  carObj2.model = "Mustang";
  carObj2.year = 1969;

  // Print attribute values
  cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n";
  cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
  return 0;
}

C ++演習

エクササイズで自分をテストする

エクササイズ:

MyClassと呼ばれるオブジェクトを作成しますmyObj

 ;