如何从文件中读取未知长度的整数数组?
我没有找到获取数组大小的方法,所以我尝试了一些临时字符串的东西,
但我的代码爆炸了...
有更好的想法吗?
Use std::vector
:
std::ifstream inFile(fileName);
std::vector<int> ints{
std::istream_iterator<int>(inFile),
std::istream_iterator<int>()
};
std::vector
提供动态存储,因此它可以根据需要调整大小以适应其所容纳的内容。我所做的就是利用构造函数,该构造函数接受一对迭代器并从头到尾循环遍历它们,并将值复制到向量中。我使用的迭代器将从文件中读取整数,直到无法读取整数为止,就像到达文件末尾时的情况一样。我还使用统一初始化来避免最麻烦的解析,这是使用这种形式的构造函数时很容易犯的错误。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)