Search code examples
c++c++-cli

const char* returns true in C++ CLI


since yesterday I have been struggling to turn text into label with code from another class, I came to this:

Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
TestApp::UI_Error form("test", "test");
Application::Run(% form);

Using the above code, i display a winapi form that receives "test", "test" as 2x const char* on loading, the problem appears when im trying to set the text in labels using these variables The code looks like this:

public:
    UI_Error(const char* errorText, const char* errorCode)
    {
        InitializeComponent();

        this->testLabel->Text = System::Convert::ToString(errorText);
    }

For some reason, each time the return value shown in the win forms window is "true", although it should be "test" here, does anyone know the solution?

I tried to use std::string instead of const char*, unfortunately for some reason i get the error code that a static variable is required :(


Solution

  • Maybe I am wrong here, but System::Convert::ToString() seems not to have a method that accepts a const char* pointer. It looks like it gets cast to something else.

    Try this instead:

    Text = gcnew System::String(errorText);