C 物件導向基礎入門

2021-10-17 03:57:44 字數 2360 閱讀 7493

c++物件導向基礎入門

物件導向三大特性:封裝 繼承 多型

const double pi=

3.14

;class

circle

//包括屬性,行為

void

print()

void

settime

(int b[3]

)//privade:(class預設許可權)

protected

: string car=

"拖拉機";}

;int main()

; c1.

settime

(b);

cout<

輸出為

圓的周長是62.8

baishaohua

拖拉機2021

120

這裡注意,class感覺就是高階版的結構體,他們的區別是class預設的是private,不可以在類外訪問到,必須加上public才可以被訪問,而結構體預設的就是public,可以直接在類外訪問

用類中的函式訪問私有屬性,可以判斷資料的有效性

class

person

string getname()

private

: string m_name;

int m_age;

string m_lover;};

int main()

class

person

int m_1;

int m_2;

int m_3;};

int main()

注意這裡的person是乙個建構函式中的有參構造,用它對類的屬性賦值是相當的方便。

class

person

person()

//建構函式 有參構造和無參構造(預設)

~person()

person

(const person &p)

//拷貝建構函式 區別於普通建構函式

int m_1;};

int main()

只要例項化乙個類都會呼叫建構函式和析構函式

此外,靜態成員變數不屬於任意乙個類

空物件所佔記憶體為1

成員函式與成員變數分開儲存 非靜態成員函式不屬於類物件上 只有非靜態成員變數屬於類的物件上

class

person

int m_1;

int m_2;

int m_3;};

void operator<<

(ostream &cout,person &p)

int main()

輸出:

m_1=

30 m_2=

20 m_3=

10

注意這裡的輸出,是不是感覺c++可以隨心所欲?

class

common

;class

man:

public common

;class

woman

:public common

;void

setvalue

(man&p1,woman&p2)

void

getvalue

(man&p1,woman&p2)

int main()

輸出:

the man p1's value is as follows

4000

1783.5

2068

________**

****

**______

the woman p2's value is as follows

3600

1684

78100

class

animal};

class

cat:

public animal};

void

dospeak

(animal &animal)

int main()

輸出:

小貓在說話
關鍵字vertual虛函式實現呼叫子類函式

自此,簡單的類和物件導向就學完了,嘿嘿!!

物件導向入門基礎練習

請定義乙個描述矩形 myrectangle 的類,包含寬和高兩個屬性,提供獲取矩形周長 perimeter 和 面積 area 的方法。並編寫測試類進行測試。在這裡插入package com.itheima public class myrectangle public void setwidth ...

C 入門物件導向基礎知識

隨著語言學習的比較多,而且都處於基礎階段,基礎容易被忘記,做個例子,複習用。其中的內容和python比較相似,畢竟都是物件導向。include includeusing namespace std define max 10 class box box box int age 建構函式 box bo...

c 物件導向基礎

物件導向程式設計一般分為兩個檔案,標頭檔案和原始檔,例如乙個person 類,分為person.h和person.cpp person.h中有類,函式的宣告 pragma once 該檔案不會被編譯多次 include 引入string include person.h using namespac...