ホームページ > バックエンド開発 > C++ > C で静的 const std::string メンバーを定義する方法

C で静的 const std::string メンバーを定義する方法

Linda Hamilton
リリース: 2024-12-19 03:48:09
オリジナル
973 人が閲覧しました

How to Define Static const std::string Members in C  ?

型 const std::string の静的データ メンバーの定義

C で、型 std::string のプライベート静的 const メンバーを定義する以下に示すように、クラス内初期化を使用するクラス内では、C に準拠していません。標準:

class A {
   private:
      static const string RECTANGLE = "rectangle";
}
ログイン後にコピー

ただし、C では、この機能を実現するための代替アプローチが提供されています。

C 17 インライン変数

C 17 以降、次のことができます。この目的にはインライン変数を使用します。インライン変数は、inline キーワードを使用して、クラス定義内で静的変数を直接宣言できるようにする C 17 の機能です。例:

// In a header file (if necessary)
class A {
private:
  inline static const string RECTANGLE = "rectangle";
};
ログイン後にコピー

C 17 より前のアプローチ

C 17 より前では、クラス定義の外で静的メンバーを定義し、そこに初期化子を提供する必要があります。以下に例を示します。

// In a header file (if necessary)
class A {
private:
  static const string RECTANGLE;
};
ログイン後にコピー
// In one of the implementation files
const string A::RECTANGLE = "rectangle";
ログイン後にコピー

注: (クラス定義内で) 試行した初期化構文は、整数型と列挙型でのみサポートされます。

以上がC で静的 const std::string メンバーを定義する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート