C++ 如何制作新的c++;使用前一个字符串中的字符设置字符串样式?

C++ 如何制作新的c++;使用前一个字符串中的字符设置字符串样式?,c++,xcode,C++,Xcode,这是我的一段代码。我是新的,但热情地学习C++。我很好奇,为什么当我试图将一个新变量第一个字母声明为字符串,以保存我以前的字符串变量问候语第一个字母的值时,会出现此错误代码。 没有从“std::_1::basic_string::value_type”(又名“char”)到“std::string”(又名“basic_string”)的可行转换。 intmain() { std::string问候语=“你好”; std::string first_字母=问候[0]; std::cout没有从ch

这是我的一段代码。我是新的,但热情地学习C++。我很好奇,为什么当我试图将一个新变量
第一个字母
声明为字符串,以保存我以前的字符串变量
问候语
第一个字母的值时,会出现此错误代码。
没有从“std::_1::basic_string::value_type”(又名“char”)到“std::string”(又名“basic_string”)的可行转换。

intmain()
{
std::string问候语=“你好”;
std::string first_字母=问候[0];

std::cout没有从char到string的隐式转换。您可以使用构造函数

std::string first_letter(1, greetings[0]);


std::string
没有隐式构造函数接受
char
。但是,您可以从
char
构造字符串,如下所示:

std::string first_letter { greetings[0] };

这是一个.< /p>这回答了你的问题吗?你好。这让我更好地理解C++中的构造函数。

std::string first_letter(greetings, 0, 1);
std::string first_letter { greetings[0] };