Comment : définir un constructeur d'interface statique (C++/CLI)

Une interface peut avoir un constructeur statique, qui peut être utilisé pour initialiser des membres de données statiques. Un constructeur statique sera appelé au plus une fois et sera appelé avant la première consultation d’un membre d’interface statique.

Exemple

// mcppv2_interface_class2.cpp
// compile with: /clr
using namespace System;

interface struct MyInterface {
   static int i;
   static void Test() {
      Console::WriteLine(i);
   }

   static MyInterface() {
      Console::WriteLine("in MyInterface static constructor");
      i = 99;
   }
};

ref class MyClass : public MyInterface {};

int main() {
   MyInterface::Test();
   MyClass::MyInterface::Test();

   MyInterface ^ mi = gcnew MyClass;
   mi->Test();
}
in MyInterface static constructor
99
99
99

Voir aussi

interface, classe