错误:'operator []'不匹配(操作数类型为'QVector '和'QCharRef')

问题描述 投票:1回答:1

我正在尝试分析qt5中的文件。

文件是向量,每个位置有一行文件,计数器是一个向量,我存储分析结果

错误:'operator []'不匹配(操作数类型为'QVector'和'QCharRef')

void FileAnalyzer(QVector<QString> &file,QVector<int> &counter)
{
    counter.resize(260);
    for(int row=0,lenFile=file.size();row<lenFile;row++)
    {
        for(int car=0;file[row][car]!='\0';car++)
        {
            if(file[row][car]==' ')contatore[256]++;//space
            counter[file[row][car]]++;//<-- here i get the error
            counter[259]++;
        }
        counter[257]++;//row
    }
    counter[257]++;//last row
    counter[258]=counter[256]+counter[257];//words number
}
c++ qt c++11
1个回答
0
投票

发生这种情况是因为您尝试使用QCharRef作为索引。你应该使用QChar代替:

counter[file[row].at(car).unicode()]++
© www.soinside.com 2019 - 2024. All rights reserved.