第一章 C++簡單程序設計
那麼以一段程序開頭吧
//first.cpp
#include <iostream>
#include <vector>
//動態數組(malloc, new 在heap上分配空間)
//malloc = m(內存)+ alloc(分配) //m(內存)--heap(堆)__stain(棧)
//vector 包含在<vector>中
using std::vector;
using std::cout; //輸出
using std::cin; //輸入
using std::endl; //換行
int main()
{
//類 對象
vector<int> vi;
//也可以直接寫vector<int> vi(3);
//定義並分配3個空間,就像C中的數組,vi[0],vi[1],vi[2]
int i = 10;
vi.push_back(i); //push_bask()會先分配空間
vi.push_back(100);
vi.resize(3); //表示動態分配3個空間,所以下一條語句成立
vi[2]=76; //如果沒有上一條的分配空間,這是不能直接用的
//vi[2]只是個指針而沒有空間
for (int k(0); k < vi.size(); k++) {
// k(0) 與 k=0等價; vi.zize()可以得到數組的daxiao
cout << vi[k] << endl;
}
}
這裏提一下
類,泛型編程,容器
類包括 結構體類型,結構體變量(在C中都是簡單的數據, 在C++中則可以是函數)
容器(container)包括了 Map(集合),Set(映射)
簡單的文件操作
- 創建一個相應的文件流對象
- 打開文件,將操作文件綁定到該流上
- 進行文件操作
- 關閉文件
創建與打開文件可以用一條語句實現
ifstream ifs("hi.cpp");
那麼寫一段程序作爲例子
//file.cpp
#include <iostream>
#include <string.h>
#include <fstream> //文件操作需要用到
using namespace std;
int main()
{
ifstream ifs;
ifs.open("file.cpp"); //打開文件,文件的具體位置要自己找,使用相對路徑與絕對路徑皆可
//ifstream ifs("file.cpp");
string line;
getline(ifs, line); //全局函數,從ifs讀1行到line中
cout << line << endl << endl;
//將整個文件都打印到屏幕上
int i(0);
while (getline(ifs, line)) {
cout << ++i << ": " << line << endl;
}
ifs.close(); //關閉文件
}
輸入與輸出都是對內存而言的,即
將內容讀入內存——輸入
將內容取出內存——輸出
ifstream 與 ofstream 是兩個類,分別用於輸入和輸出
要把內容寫到文件中,只要使用以下代碼
ofstream ofs("copy.cpp");
int j(0);
while (getline(ifs,line)) {
ofs << ++j << ": " << line << endl;
}
在創建對象時,自動調用構造函數
超過對象的使用域時會調用析構函數,其中包含了文件關閉函數,因此有時候就不用調用close()函數了
既然以一段代碼開頭了,那麼就以代碼結尾吧
//file.cpp
#include <iostream>
#include <string.h>
#include <fstream> //文件操作需要用到
using namespace std;
int main()
{
string name("Jiang");
int age(20); //括號也是可以賦值的
ofstream fout("person.ini");
fout << name << " " << age << endl;
fout.close(); //若沒有這條語句則一個文件同時有了兩個流,會出錯
//{fout << name << " " << age << endl;}//也可以用花括號規定fout的作用域
cout << "after some days …" << endl;
ifstream fin("person.ini");
string newname;
int newage;
fin >> newname >> newage;
cout << newname << " " << newage << endl;
}
以上就是第一章的內容了
下一篇博客將會有與第一章內容相契合的三個小程序
第二章我們會講到常量和引用