答えて
実際にはC++/CLIに接続されていました(アンマネージC++は実際にはプロパティの概念を持っていません)。
プロパティは、フィールドと同じように動作するが、getterおよびsetterアクセサ関数によって内部的に処理されるエンティティです。スカラープロパティ(フィールドのように動作する場所)またはインデックス付きプロパティ(配列のように動作する場所)にすることができます。古い構文では、プロパティを実装するためにgetterメソッドとsetterメソッドをコード内に直接指定する必要がありました。 C++/CLIでは、構文はよりC#であり、記述しやすくなりました。この記事からの引用
:http://www.codeproject.com/KB/mcpp/CppCliProperties.aspx
はまた、C++/CLIでの特性にMSDNを参照してください。
サンプルコード:
private:
String^ lastname;
public:
property String^ LastName
{
String^ get()
{
// return the value of the private field
return lastname;
}
void set(String^ value)
{
// store the value in the private field
lastname = value;
}
}
あなたは次のように書いています: "ロパティはフィールドのように振る舞う実体です"。フィールドとは何ですか? –
@lital:フィールドは 'class'または' struct'で直接宣言された変数です。任意の型( 'String'、' bool'、 'int'など)にすることができます。フィールドを含む型( 'class'または' struct')のメンバである変数であるため、 "メンバ変数"と呼ばれるフィールドが表示されることがあります。プロパティのポイントは、これらのプライベートフィールドを公開して、オブジェクト指向の設計原則に準拠させることです。 –
フィールドは、クラス内の任意のメソッドからアクセス可能な変数です。しかし、あなたがクラスであるかを尋ねる前に、C++でOOPに関するいくつかの記事を読むことをお勧めします。 –
うんは確かにこれは、マネージC++コードまたはC++/CLIのMicrosoftのバージョンです。今すぐGet &メソッドを書く必要があるだけでなく、それをプロパティとして定義する必要もあります。 プロパティの「読み取り専用」と「書き込み専用」のバージョンがきちんときちんと記述されていることを、私が余計にタイプするのが嫌いと言っています。
ただし、un-managed C++では不要です。あなたはクラスで書くことができる。例えば
(正確に同じことを行います!):
std::string GetLastName() const { return lastname;}
void SetLastName(std::string lName) { lastname = lName;}
「のconstは、」それはGET 'を確認しましたが、読み取り専用、およびセットが明確でした。プロパティを定義したり、文字列^ std :: stringの混乱を追加する必要はありません。
- 1. Groovyの 'プロパティ'とは何ですか?
- 2. ember.jsの '[]'プロパティと '@each'プロパティの違いは何ですか?
- 3. .NET Control.Marginプロパティとは何ですか?
- 4. EntityDataSourceのselectプロパティの "it"とは何ですか?たとえば
- 5. ProgressBarコントロールのLargeChangeプロパティとSmallChangeプロパティは何をするのですか?
- 6. Javascript hasOwnPropertyのプロパティは何ですか?
- 7. スイングコンポーネントの名前プロパティは何ですか?
- 8. TFSのWorkItemクラスのLinksプロパティとWorkItemLinksプロパティの違いは何ですか?
- 9. javascriptのcurrentTargetプロパティとtargetプロパティの正確な違いは何ですか?
- 10. 依存関係プロパティとWPFの添付プロパティの違いは何ですか?
- 11. Visual Studioの参照プロパティのエイリアスとは何ですか?
- 12. [プロパティ]の[バージョン]タブとWindows Vistaの対応は何ですか?
- 13. Xcode 4のIDインスペクタのLabelプロパティとは何ですか?
- 14. ソナーのテストとバイナリのプロパティは何ですか?
- 15. jQuery AjaxでisLocalプロパティを使用するとは何ですか?
- 16. Function、Array、およびObjectコンストラクタのlengthプロパティとは何ですか?
- 17. インスタンス変数とプロパティの違いは何ですか?
- 18. Netbeans PHPプロジェクトのプロパティ:Webルートとは何ですか?
- 19. ハードドライブのプロパティ "range delta"とは何ですか?
- 20. NSDictionariesとプロパティを持つカスタムオブジェクトの違いは何ですか?
- 21. ユニークなアソシエーティブハッシュマップコンテナとアソシエイティブハッシュマップコンテナのプロパティは何ですか
- 22. プロパティとインスタンス変数の違いは何ですか?
- 23. VS SDK 1.1 MSIインストーラのプロパティとは何ですか?
- 24. base.ItemAdded(プロパティ)とは何ですか;イベント処理コードのために
- 25. KVCとプロパティの違いは何ですか?
- 26. Antプロパティにアクセスするときの@と$の違いは何ですか?
- 27. +と - メソッドのプロパティを定義するときの違いは何ですか?
- 28. JavaScriptでは、二重引用符( "")で囲まれたプロパティ名とないプロパティ名の違いは何ですか?
- 29. rallyから返される特定のプロパティは何ですか?
- 30. オブジェクトのプロパティとしてブロックを保持するポリシーは何ですか?
どこに見ましたか?完全な文をお願いします。 –