0

我遇到了一个以前从未见过的新错误/错误。这是指什么或我应该在哪里看?或者这种错误的原因是什么?

No source available for "libstdc++-6!_ZNSsC1ERKSs() at 0x6fc89524"

我怀疑它是在这个虚拟数据函数之后弹出的:

template <class T>
void DummyDataStudents(Array <T> A){
    for(int i=0; i<A.lenght; i++){
        A.M[i].setStudent(i, i%2,"student"+i);
    }
    cout<<"Done Stundents"<<endl;
}
4

1 回答 1

4

正如@Nick 已经说过的,这条消息来自调试器,它无法打开 std::string 的构造函数的源文件(ucec++filt来解码这个神秘的名字)。

您的问题是A.M[i].setStudent(i, i%2,"student"+i);行,因为您将 i 添加到“student”-Pointer,使其成为 i=0 的“student”,i=1 的“tudent”,i=2 的“udent”,...“” i=7 和 i>=8 的未定义行为。您可以使用 将 i 转换为字符串std::stringstream

于 2012-05-03T14:20:13.587 回答