【C++】クラスの基本的な使い方まとめ(定義→オブジェクト作成→メンバアクセス)

目次

はじめに

C++のクラスは、オブジェクト指向プログラミングの基本となる「設計図」です。この設計図を実際にプログラムで活用するには、決まった手順を踏む必要があります。

この記事では、C++のクラスを利用するための基本的な流れを、以下の3つのステップに分けて、総復習として解説します。

  1. クラスを定義する: オブジェクトの設計図を作成します。
  2. オブジェクトを作成する: 設計図から実体を生成します。
  3. メンバにアクセスする: オブジェクトのデータや機能を実際に利用します。

クラスの利用手順とサンプルコード

このコードは、Dog(犬)というクラスを定義し、そのクラスから dog1 というオブジェクトを作成して、そのメンバにアクセスする一連の流れを示します。

完成コード

#include <iostream>
#include <string>

using namespace std;

// --- 1. クラスの定義 ---
class Dog {
public:
    // データメンバ
    string name;

    // メンバ関数
    void bark() {
        cout << name << "「ワン!」" << endl;
    }
};

int main() {
    // --- 2. オブジェクトの作成 ---
    Dog dog1;

    // --- 3. メンバへのアクセス ---
    // メンバ変数に値を設定
    dog1.name = "ポチ";

    // メンバ関数を呼び出し
    dog1.bark();

    return 0;
}

実行結果

ポチ「ワン!」

各ステップの解説

ステップ1: クラスを定義する

class Dog { ... }; の部分が、クラスの定義です。どのようなデータ(name)と、どのような機能(bark())を持つかをここで設計します。これはあくまで「型」の定義であり、この時点ではまだメモリ上に実体は存在しません。

ステップ2: オブジェクトを作成する

Dog dog1; の部分が、オブジェクトの作成です。Dog という設計図(型)から、dog1 という名前の**変数(オブジェクトの実体)**を宣言しています。この瞬間に、dog1 のためのメモリが確保されます。

補足: new を使ったオブジェクトの作成

ポインタと new 演算子を使って、動的にオブジェクトを作成することもできます。この場合、使い終わったら必ず delete でメモリを解放する必要があります。

// ポインタを宣言
Dog* p_dog;
// new で動的にオブジェクトを作成し、そのアドレスをポインタに格納
p_dog = new Dog;

// アロー演算子(->)でメンバにアクセス
p_dog->name = "ハチ";
p_dog->bark();

// deleteでメモリを解放
delete p_dog;

ステップ3: メンバにアクセスする

作成したオブジェクトのメンバ変数やメンバ関数には、ドット演算子 (.) を使ってアクセスします。

  • dog1.name = "ポチ";: dog1 オブジェクトの name というメンバ変数に値を代入しています。
  • dog1.bark();: dog1 オブジェクトの bark というメンバ関数を呼び出しています。

まとめ

C++のクラスを利用する手順は、以下の通りです。

  1. 設計する (class): どのようなデータと機能を持つか、クラスを定義する。
  2. 作成する (オブジェクト宣言): 設計図から、変数としてオブジェクトの実体を作る。
  3. 利用する (. または ->): 作成したオブジェクトのメンバにアクセスして、データを読み書きしたり、機能を実行したりする。

この「設計→作成→利用」という流れが、オブジェクト指向プログラミングにおける全ての基本となります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次