没有可用于 FOO 的来源

  • 本文关键字:FOO 用于 c++
  • 更新时间 :
  • 英文 :


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

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;
}

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

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

最新更新