C 定義乙個物件和new乙個物件的區別與聯絡

2021-07-11 12:58:08 字數 461 閱讀 7243

由於對c++的使用時斷斷續續的,所以今天拿起來看了,c++中乙個最大的特色就是有了類的設計思想

基本後面的所有包括封裝,多型,繼承等都是基於類的思想完成的。

類到物件的過程就是例項化的過程,我經常會看到兩種方式,一種是這樣的:

class a

void main()

另外一種是這樣的:

class a

void main()

上面兩種方式一種可以看著是在主函式定義乙個物件,另乙個可以看著是new乙個物件,主要有以下幾點不同:

1、他們的儲存空間不同,直接定義乙個物件放在棧上,new乙個物件放在堆上

2、使用場合不同,由於棧較小並且主要用於儲存臨時變數,所以定義乙個物件在{}的作用域生命週期就完了,new的物件放在堆上,可以通過函式返回他的指標,並且需要手工去銷毀這個物件否則會出現記憶體洩漏

3、new的特性:

4、new的特性:

物件 new乙個

1格式格式 class 類名 類名 要求符合大駝峰命名法,見名知意 類名這裡可以認為是乙個資料型別名,自定義資料型別 屬性描述 描述當前類有哪些屬性 例如 人類的身高體重,年齡姓名 行為描述 描述當前類有哪些行為 例如 人類的吃飯行為,睡覺行為,打遊戲行為依葫蘆畫瓢格式 scanner掃瞄器 sca...

new乙個物件的過程和clone乙個物件的區別?

new 操作符的本意是分配記憶體。程式執行到 new 操作符時,首先去看 new 操作符後面的型別,因為知道了型別,才能知道要分配多大的記憶體空間。分配完記憶體之後,再呼叫建構函式,填充物件的各個域,這一步叫做物件的初始化,構造方法返回後,乙個物件建立完畢,可以把他的引用 位址 發布到外部,在外部就...

沒有物件?new乙個!

我們都知道,使用new後可返回乙個物件,通常用於例項化乙個 類 用法 function student name,age student.prototype.sayname function const person new student 小明 person.sayname i am 小明首先我們...