回响_ 发表于 2024-2-7 09:49:30

C++快速入门--P48--容器和算法--课上代码

#include<iostream>
#include<string>
#include<vector>



int main()
{
        std::vector<std::string> str_1;
       
        str_1.push_back("小甲鱼");
        str_1.push_back("大黄辣丁");
        str_1.push_back("白条");
        str_1 = "野生小龙虾";
       
        std::cout << str_1 << "\n";
        std::cout << str_1 << "\n";
        std::cout << str_1 << "\n";
       
        return 0;
}

FishC 发表于 2024-2-7 09:49:44

代码有一些问题。首先,你需要包含`<iostream>`和`<vector>`头文件。其次,`std::vector`是一个模板类,你需要指定容器中存储的元素类型。在这里,你想要存储字符串,所以应该使用`std::vector<std::string>`。

另外,你想把一个字符串赋值给整个容器,这是不对的。你可以通过索引来修改容器中的元素,但不能直接把一个字符串赋值给整个容器。

下面是修正后的代码:

#include <iostream>
#include <vector>
#include <string>

int main()
{
    std::vector<std::string> str_1;
   
    str_1.push_back("小甲鱼");
    str_1.push_back("大黄辣丁");
    str_1.push_back("白条");
   
    for (int i = 0; i < str_1.size(); i++) {
      std::cout << str_1 << std::endl;
    }
   
    return 0;
}

这段代码创建了一个`std::vector<std::string>`类型的容器`str_1`,并使用`push_back`函数向容器中添加了三个字符串。然后,通过循环遍历容器,将每个元素打印出来。

希望这能帮助到你!有任何问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: C++快速入门--P48--容器和算法--课上代码