1,vector
//注意容易混淆的問題:各種括號
vector<int> v1(10);//v1有10個int元素,每個都初始化爲0
vector<int> v2{10}; //v2有1個元素,值是10
vector<int> v3[10]; //v3是有10個元素的數組,相當於二維數組。
//每個元素都是一個空vector對象
vector<int> v4(10, 1); //v4有10個int元素,每個都初始化爲1
vector<int> v5{10, 1}; //v5有2個int元素,值分別是10和1
可以定義結構體向量
struct ScoreItem{
string name;
vector<int> scores;
};
vector<ScoreItem> scoreSheet;
2,文件讀寫
輸入輸出重定向
將標準輸入和標準輸出與命名文件關聯起來
c:\> program <inputfile >outputfile
運行名爲program.exe的可執行程序,用文件inputfile作爲輸入,用文件outputfile作爲輸出
步驟:
1)新建一個文件流對象
讀文件用ifstream,寫文件用ofstream;
(2)把文件流對象和文件關聯起來
打開文件,使用文件流的open函數;
可以指定打開文件的模式
(3)操作文件流
使用與終端I/O相同的操作讀寫文件
(4)關閉文件流
使用文件流的close函數
#include <fstream> //文件流標準庫頭文件
using namespace std;
int main(){
ifstream in("numbers.txt");//用來輸入(讀文件)的文件流
int number, sum = 0;
in >> number;
while(number != 0){
sum += number;
in >> number;
}
in.close();
ofstream out; //用來輸出(寫文件)的文件流
out.open("output.txt");
out << "sum is: " << sum << endl;
out.close();