2010-04-07 5 views
2

Je suis un débutant à C++/CLI car je viens d'un arrière-plan C#. J'écris actuellement un wrapper pour du code C++ natif. J'ai les méthodes suivantes:C++/CLI .ToString() retournant l'erreur

void AddToBlockList(System::String^ address) 
    { 
     char* cAddress = (char*)(void*)Marshal::StringToHGlobalAnsi(address); 
     _packetFilter->AddToBlockList(cAddress); 
    } 

    void AddToBlockList(IPAddress^ address) 
    { 
     char* cAddress = (char*)(void*)Marshal::StringToHGlobalAnsi(address.ToString()); 
     _packetFilter->AddToBlockList(cAddress); 
    } 

... La première méthode fonctionne bien et convertit ma chaîne dans le tableau de caractères. Cependant, la deuxième fonction avec l'objet IPAddress que le signiture me donne l'erreur suivante:

error C2228: left of '.ToString' must have class/struct/union 

... Quand je tape

? address.ToString() 

... dans la fenêtre de commande, les impressions d'adresse IP . Je ne sais pas où je vais mal. Des idées?

Répondre

5

address->ToString()?