はじめに

C++にてクラス内にクラス変数(static変数)を定義する際、Javaと同等の記法を行うと、コンパイルは通るもののリンク時にエラーが発生します。

C++でのクラス変数(static変数)の定義方法を以下に示します。

クラス変数(static変数)の定義方法

C++にてクラス変数(static変数)を定義するには、以下のようにします。

サンプルコード
#include <stdio.h>

class Hoge
{
    public: static int iNumber;
};

int Hoge::iNumber=3;

プログラムの最後の行にあるように、クラスの定義内で規定したクラス変数(static変数)を、グローバル定義域でスコープ演算子「::」を利用して初期化します。

この宣言を行うことにより、リンクが無事通るようになります。


あなたの探し物は見つかりましたか?
まさにこれだ
参考になった
ちょっと違う
これじゃない

何かメッセージがあればお願いします

このメッセージを非公開にする

ご注意

・頂いたメッセージは管理者のチェックの後、公開されます。
・メッセージの公開を希望されない場合には、「このメッセージを非公開にする」にチェックを入れてください。
・管理者が不適切と判断したメッセージは公開しませんので、予めご了承ください。


まさにこれだ
2 (100%)

表示できるメッセージはありません。