C++學習筆記(零)

C++學習筆記

序章

C++內容:

  1. 基本元素
  2. Objects(對象) & Class(類)
  3. Inheritance(繼承) & Polymorphism(多態)
  4. Exceptions(異常) & Templates(模板)
  5. C++ Standard Library

C++閱讀推薦

  1. Thinking in C++, 2nd Edition, Bruce Eckel
  2. C++ primer, 5th Edition, Stanley Lippman(語法不清楚時可以看)
  3. The C++ Programmer Language, 4rd Edition, Bjarne Stroustrup (接觸C++一段時間後可以看)
  4. Essential C++, Stanley Lippman (一般般,可以快速過一遍)
  5. (more) Effective C++, 3rd 2005, (如何高效使用C++)
  6. Effective Modern C++, 2014
  7. Inside The C++ Object Model, Stanley Lippman(底層與細節)
  8. Information: Download books and code(vol.1)
    http://www.mindview.net/Books/DownloadSites/

Preparation

one C++ Compiler(gcc/g++, visual c++, clang)
準備好一個c++的編譯器即可,不管什麼地方都可以寫代碼,不過應該會更多的使用IDE吧…

那麼開始寫第一個C++程序吧

程序員的hello world!
//hello.cpp
#include <iostream>
int main()
{
    std::cout << "hello world!\n";
}
其中 “

C++源文件處理過程

  1. C++源文件(.cpp / .h)
  2. 預處理(宏展開,加入頭文件)
  3. 編譯(處理語法問題)
    1. 各個編譯單元獨立處理
    2. 任何標識符使用前必須聲明
    3. 聲明不會分配空間
    4. 定義會分配空間,而且可以充當聲明
  4. 鏈接(*.obj)
  5. 可執行文件(*.exe)
以上文的“hello.cpp”爲例

具體的處理過程如下:
1. 編譯 hello.cpp 生成 hello.obj (目標文件)
2. 鏈接 hello.cpp 生成 hello.exe (可執行文件)
3. 運行hello.exe(或hello)

ODR原則

One Definition Rale
任何標識符必須有定義並且只能定義一次
一條建議:聲明放在頭文件中,定義放在cpp文件中

IDE

Visual Studio介紹
1. *.sln 解決方案文件 (包含···工程,顯示版本)
2. *.vcxproj 工程文件 (包含源文件)
3. *.obj 在 Debug 文件夾下 (product的Debug下)
4. *.exe 在 Solution的Debug下
其他IDE還有很多,找自己喜歡用的就好
那麼用IDE寫個程序吧

第二個程序

加強版hello

//hello.cpp
#include <iostream>
#include <string.h>
//using namespace std;  //表示std的名稱空間都開放了,之後就不用寫“std::”了
//using std::cout;  //表示開放了cout,以後的cout都不用在前面“std::”了
int main()
{
    std::string name;
    std::cin >> name;
    std::string greating = "hello " + name + "~";
    std::cout << greating << std::endl;
}

運行一下試試會發生什麼吧~

以上內容即爲序章
(內容大多源自老師講課)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章