Speichern einer Referenz auf ein Objekt

Ein bisschen eine seltsame Frage, aber ich Frage mich wer helfen könnte...

In C++, ich könnte so etwas tun

class MyOtherClass
{
     private:
         MyLogger* logger;
     public:
         MyOtherClass (MyLogger* logger)
              : logger (logger)
         {}
};

class MyClass
{
     private:
         MyLogger* logger;
     public:
         MyClass (MyLogger* logger)
              : logger (logger)
         {}
};

int main (int c, char** args)
{
    MyLogger* logger = new MyLogger ();
    /* Code to set up logger */
    MyOtherClass* myOtherClass = new MyOtherClass (logger);
    MyClass* myClass = new MyClass (logger);
}

So, dass jeder von den anderen Objekten (myOtherClass und myClass") enthalten würde, ein Zeiger auf logger, so würden Sie den Aufruf der gleichen logger-Klasse. Allerdings, wie würde ich das gleiche zu erreichen, was in C#? Gibt es eine Möglichkeit, um zu speichern eine Referenz oder ein Zeiger auf eine Globale Objekt - ich vermute, dass in C# wenn ich etwas mache, wie

public class MyClass
{
     private MyLogger logger = null;

     public MyClass (MyLogger _logger)
     {
         logger = _logger;
     }
};

dass es eigentlich die Zuordnung der Klasse variable logger, um eine Kopie von _logger? Oder bin ich mischen Dinge :S

Jede Hilfe wird sehr geschätzt, und ich danke Ihnen im Voraus!

InformationsquelleAutor KingTravisG | 2012-11-08
Schreibe einen Kommentar