Why can't I declare a string in my program: “string is undeclared identifier”

前端 未结 3 1105
粉色の甜心
粉色の甜心 2021-01-12 07:12

I can\'t declare a string in my program:

string MessageBoxText = CharNameTextBox->Text;

it just doesn\'t work. It says string is u

相关标签:
3条回答
  • 2021-01-12 07:58

    Make sure you've included this header:

    #include <string>
    

    And then use std::string instead of string. It is because string is defined in std namespace.

    And don't write this at namespace scope:

    using namespace std; //bad practice if you write this at namespace scope
    

    However, writing it at function scope is not that bad. But the best is one which I suggested before:

    Use std::string as:

    std::string MessageBoxText = CharNameTextBox->Text;
    
    0 讨论(0)
  • 2021-01-12 07:59

    To use the standard string class in C++ you need to #include <string>. Once you've added the #include directive string will be defined in the std namespace and you can refer to it as std::string.

    E.g.

    #include <string>
    #include <iostream>
    
    int main()
    {
        std::string hw( "Hello, world!\n" );
        std::cout << hw;
        return 0;
    }
    
    0 讨论(0)
  • 2021-01-12 08:04

    Are you by any way compiling using C++/CLI, the Microsoft extension for .NET, and not standard ISO C++?

    In that case you should do the following:

    System::String^ MessageBoxText = CharNameTextBox->Text;
    

    Also see the following articles:

    • How to: Convert Between Various String Types
    • How to: Convert System::String to Standard String
    • How to: Convert Standard String to System::String
    0 讨论(0)
提交回复
热议问题