c++ 将数据从2D向量移动到变量-->E0349没有运算符“=”匹配这些操作数

dldeef67  于 2023-01-28  发布在  其他
关注(0)|答案(1)|浏览(150)

实际上只是尝试将文本数据从2D向量移动到变量。
我花了相当多的时间在谷歌和SOF上搜索这个,我很震惊,有数百个结果,但没有一个这么简单。
如果这是一个dup(我敢肯定这是),如果一个国防部可以指出我,我将不胜感激。

#include <vector>
#include <string>

void main()
{
    std::string str_hi;
    std::string str_how;
    std::string str_goodbye;

    std::vector<std::vector<std::string>> vec_data
    {
        //    
            { "Hi", "" },
            { "How are you ?", "" },
            { "Good bye :)", "" }
    };

    str_hi = vec_data[0, 0]; // error here; red line under '='
    str_how = vec_data[1, 0]; // error here; red line under '='
    str_goodbye = vec_data[2, 0]; // error here; red line under '='
}```

> error: E0349 no operator "=" matches these operands
> error: E0349 no operator "=" matches these operands
> error: E0349 no operator "=" matches these operands
>
xhv8bpkk

xhv8bpkk1#

您需要更改语法:

str_hi = vec_data[0][0];

您的版本使用的是 * 逗号运算符 *。在一本好的C教科书中查找“逗号运算符”。也可以在互联网上搜索“C常见问题矩阵”。

相关问题