Visual C++ .NET/Generics/Generic Property

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Generic property

<source lang="csharp">

  1. include "stdafx.h"

using namespace System; template <typename T> public ref class CTemplate {

  T m_obj;
  public:
      CTemplate(T obj) { m_obj = obj; }
      property T InnerObject
      {
         T get() { return m_obj; }
         void set(T obj) { m_obj = obj; }
      }

}; int main(){

  CTemplate<int>^ ct_int;
  CTemplate<String^>^ ct_string;
  ct_int = gcnew CTemplate<int>(55);
  ct_string = gcnew CTemplate<String^>("test");
  Console::WriteLine("{0} ", ct_int->InnerObject );
  Console::WriteLine("{0} ", ct_string->InnerObject );

}

 </source>