我正在阅读一个文本文件,其中包含制表符分隔的各种 int、string 和 double 字段。我正在尝试生成“/ t”字符的位置数组。我正在竭尽全力试图让它发挥作用。我不断得到
undefined reference to getTAB(std::string, int*)
主要错误。
我究竟做错了什么?
我的文件如下
主文件
#include <iostream>
#include <fstream>
#include <string>
#include "getTAB.h"
using namespace std;
int main ()
{
int tab = 7; int tabPosition[tab];
string lineOfInput;
ifstream inFile("DATA/inputData.txt");
while(getline(inFile,lineOfInput))
{
cout << lineOfInput << endl;
getTAB(lineOfInput, &tabPosition[0]);
}
inFile.close();
return 0;
}
获取TAB.h
#ifndef GETTAB_H_INCLUDED
#define GETTAB_H_INCLUDED
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void getTAB(string line, int *array);
#endif // GETTAB_H_INCLUDED
和 getTAB.cpp
#include "getTAB.h"
void getTAB(string line, int *array)
{
int tab = 0;
for(int i=0; i < line.length(); i++)
{
if(line.at(i) == '\t')
{
array[tab] = i;
cout << tab <<"----"<< i << endl;
j++;
}
}
return;
}
输入数据.txt
1 OTTO BROTHERS FHS 517267 1417.174 ZA 11 TRPF 18162 BC H