c++ primer plus筆記 [chapter 1 - 2]

特性:高效簡潔快速可移植,oop,泛型編程。


二重性:oop&低級硬件訪問。


C++程序從 main() 函數開始執行


函數由函數頭和函數體組成,且函數頭需要指出函數的返回值以及函數期望通過參數傳遞給它的信息類型:

// 函數頭
int check(int code) 
// 函數體開始
{
    // TODO: to check code
    // 返回值
    return 0;
}
// 函數體結束


main函數默認向操作系統return 0;(也叫退出值) 此規則不適用於main以外的函數。


儘可能在首次使用變量前進行聲明。


應當爲程序中使用的每個函數提供原型:

// 原型
int check();
// 函數定義
int check() {
    // TODO: do something
    return 0;
}


原型與定義:原型只描述函數接口(只描述發送給函數的信息和返回的信息),而定義是包含了函數的代碼。


編譯器在編譯程序時,會在庫文件搜索使用到的函數。


庫文件與頭文件:庫文件包含了函數的編譯代碼,而頭文件中則包含了原型。


讓程序能夠訪問命名空間的其中4種方式:

  1. 將 using namespace std; 放在函數定義之前,讓文件中所有的函數都能夠使用命名空間 std 中所有的元素;
  2. 將 using namespace std; 放在特定的函數定義中,讓該函數能夠使用命名空間 std 中的所有元素;
  3. 在特定的函數中使用類似 using std::cout; 這樣的編譯指令,而不是 using namespace std; ,讓該函數能夠使用指定的元素,如 cout;
  4. 完全不實用編譯指令 using ,而在需要使用命名空間std中的元素時,使用前綴 std:: ,如 std::cout。
std::cout 輸出:
std::cout << "hello, world!";
std::cout << "--hello, world!" << std::endl;
std::cout << "hello, " << std::endl; << "world!" << std::endl;

輸出結果:
hello, world!--hello, world!
hello,
world!

std::cin 輸入:
int age;
std::cout << "Enter age: ";
std::cin >> age;
std::cout << "age = " << age << std::endl;

輸出結果
Enter age: 12 // 12爲輸入數字,並回車
age = 12

庫文件與頭文件:庫文件包含了函數的編譯代碼,而頭文件中則包含了原型。
int age = 12;
std::cout<< "age = " << age << endl;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章