我通读了一个文件一次,找出它包含的行数,然后再次通读它,这样我就可以将每一行的一些数据存储在一个数组中。有没有比关闭并再次打开文件更好的方法来读取文件两次?这是我得到的,但恐怕效率很低。intnumOfMappings=0;ifstreamsettingsFile("settings.txt");stringsetting;while(getline(settingsFile,setting)){numOfMappings++;}char*mapping=newchar[numOfMappings];settingsFile.close();cout 最佳答