标签:tmp std GNU viewer 1614944422 300 date 100
记录一次奇怪的错误
报错部分代码
void readFile(std::string path, std::vector<cv::Point2d>& points){//载入二维点
std::cout<<"point.size(): "<<points.size()<<std::endl;
ifstream in(path);
string line;
while (getline(in, line)) { //按行处理
stringstream ss(line);
string token;
cv::Point2d pt;
vector<string> tmp;
while (ss >> token){ //处理行中每一个小节
tmp.push_back(token);
}
pt.x = stoi(tmp[1].c_str());
pt.y = stoi(tmp[2].c_str());
std::cout<<"给出的二维坐标为: "<< pt.x <<" "<< pt.y <<std::endl;
points.push_back(pt);
}
std::cout<<"point.size(): "<<points.size()<<std::endl;
std::cout<<"point: "<<points[0]<<" "<<points[1]<<std::endl;
std::cout<<"point: "<<points[0].x<<" "<<points[0].y<<std::endl;
std::cout<<"point: "<<points[1].x<<" "<<points[1].y<<std::endl;
in.close();
}
输出
point.size():0
给出的二维坐标为: 100 100
给出的二维坐标为: 200 200
给出的二维坐标为: 300 300
*** Aborted at 1614944422 (unix time) try "date -d @1614944422" if you are using GNU date ***
PC: @ 0x7f51eefab39c readFile()
*** SIGSEGV (@0x20) received by PID 27632 (TID 0x7f51ef347880) from PID 32; stack trace: ***
@ 0x7f51ee6cf390 (unknown)
@ 0x7f51eefab39c readFile()
@ 0x7f51eef90ba4 pangolin_viewer::viewer::judgeTri_SaveResult()
@ 0x7f51eef95489 pangolin_viewer::viewer::draw_landmarks()
@ 0x7f51eef9611a pangolin_viewer::viewer::run()
@ 0x41d3f7 mono_localization()
@ 0x41b674 main
@ 0x7f51ebefd840 __libc_start_main
@ 0x41c049 _start
@ 0x0 (unknown)
Segmentation fault (core dumped)
问题原因:
该函数读取的txt文档内容多啦一行空格
1 100 100
2 200 200
3 300 300//删除下一行空格后,问题解决
//原本这里多了一行空格导致出错
标签:tmp,std,GNU,viewer,1614944422,300,date,100 来源: https://blog.csdn.net/weixin_45617478/article/details/114410928
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。