考虑以下:
我定义了一个类:
class Human
{
public:
std::string Name;
std::string Age;
std::string Weight;
}
我定义了一个 .txt 文件:
Justin,22,170
Jack,99,210
Fred,12,95
etc...
目标是将此文本文件转换为 std::vector
我目前的代码如下:
vector<Human> vh;
std::ifstream fin(path);
std::string line;
while(std::getline(fin,line))
{
std::stringstream linestream(line);
std::string value;
Human h;
int IntSwitch = 0;
while(getline(linestream,value,','))
{
++IntSwitch;
try{
switch(IntSwitch)
{
case 1 :
h.Name = value;
break;
case 2:
h.Age = value;
break;
case 3:
h.Weight = value;
vh.push_back(h);
break;
}
}
catch(std::exception ex)
{
std::cout << ex.what() << std::endl;
}
}
}
现在我只是好奇是否有任何 c++11 技术或非 c++11 技术会比这更有效/更容易阅读?