掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
変数宣言の仕方 クラス内.cppか Headerか (ID:73006)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
class A { static int valA; // 1.class A全体に対して唯一のオブジェクト int valB; // 2.class Aの各インスタンス毎のオブジェクト }; static int valC; // 3.翻訳単位内対して // 唯一のオブジェクトと(できる) となります。 valAはclass Aの全インスタンスで共有するオブジェクトです。 つまり3つのインスタンス A a0; A a1; A a3; があったとき、 valAはa0,a1,a2のどれから参照しても唯一の実体です。 valBはa0,a1,a2毎に違う値を設定できます。 staticは対象メンバの所属がそのクラスであることをしめします。 また、valAはクラス外のコードににその実体を用意しなければなりません。 int A::valA; // valAの実体 valCですが、これは一般的には、当該変数を、それを内包する翻訳単位内 で共有を目指すものです。アプリケーション全体で共有(グローバル変数) することを目指しません。従って、一般的な開発者はヘッダー内に このようには書きません。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.