我是乙個正在學習c++的同學,把自己的學習筆記和一些自己的理解記錄下來。如果有什麼地方寫得不對,還希望各位朋友指正。我寫的是有c語言基礎之後學習c++ 的學習經歷。並不是零基礎學習c++建構函式:在建立物件的時候會自動呼叫的函式 ,是c++中特殊成員函式 主要是在建立物件時 初始化物件 為物件的成員變數賦值
注意:a、名字必須與類同名 無返回值 可能有引數
b、訪問許可權一般是public,沒有建構函式的訪問許可權就不能建立物件
c、使用者不能呼叫建構函式 只有在類物件建立時 自動呼叫
#include
using
namespace std;
class
date
void
print()
};intmain()
這裡我們看到我們子寫了帶引數的建構函式,如果建立物件時沒有引數就錯了。那麼為什麼我們自己不寫建構函式的時候可以不傳引數呢。因為c++在我們自己沒寫建構函式時會自動生成乙個沒有引數的建構函式。使用在我們自己寫了有引數的建構函式之後。還要建立沒有引數的物件,那我們還得寫乙個沒有引數的建構函式。
date()
//這裡是函式過載
date
(int day,
int month,
int year)
我們還可以用建構函式直接初始化成員資料。
建構函式的初始化列表:建構函式用冒號形式引出初始化列表:
注意:初始化順序是按照成員宣告的順序,初始化成員的順序應該和成員宣告的順序保持一致,不建議使用成員初始化其他成員
date
(int day,
int month,
int year):d
(day),m
(month),y
(year)
this指標:是乙個指標,指向物件本身,this只能在類的內部使用,在類的內部呼叫成員都是使用this呼叫的,可以省略
在類的內部呼叫成員變數和成員函式,都是使用this呼叫,所以可以省略this;省略this的時候叫隱式使用this,寫出this的時候
叫顯式使用this
#include
using
namespace std;
struct date
void
print()
date&
add(
int day)};
intmain()
C到C 注釋的轉換
如上圖 利用狀態機的思想來解決c注釋到c 注釋的轉換。不允許注釋巢狀 在狀態內處理,狀態間跳轉,根據不同的的事情發生相應的動作,並進行相應的狀態轉換。程式共有四種狀態 nulstate 無狀態 cstate c狀態 cppstate c 狀態 endstate 結束狀態 1.當為無狀態時,遇到特定標...
c語言到c 注釋轉換
問題的引入 為什麼需要注釋?問題的解答 1.使用一些注釋符來增加我們程式的可讀性,2.遮蔽掉一些不需要程式。注釋符一般分為兩種 一種是以 開頭,在中間加上注釋內容,並以 結尾的段落注釋符。在 和 之間的即為注釋。另一種是以 開頭,後面加注釋內容的單行注釋符。在 之後的即為注釋。其中 1.c語言的注釋...
C 學習筆記(五) 從C到C
主要內容 內聯函式 內聯函式與帶引數巨集區別 新的型別轉換運算子 一 內聯函式 inline int max int a,int b 二 內聯函式與帶引數巨集的區別 1.內聯函式呼叫時,要求實參和形參的型別一致 內聯函式會先對實參表示式進行求值,然後傳遞給形參 而巨集呼叫時只用實參簡單地替換形參 2...