Listing 8

using namespace System;
public ref class Client
{
    String^ clientName;
/*4*/   void ProcessNewMsg(String^ msg)
    {
       Console::WriteLine("Client {0} received message {1}", clientName, msg);
    }
public:
    Client(String^ clientName)
    {
        this->clientName = clientName;
/*5*/       Server::ProcessNewMsg += 
            gcnew Server::NewMsgEventHandler(this, &Client::ProcessNewMsg);
    }
/*6*/   ~Client()
    {
        Server::ProcessNewMsg -= 
            gcnew Server::NewMsgEventHandler(this, &Client::ProcessNewMsg);
    }
};