指標與C 基本原理

2021-09-08 22:33:15 字數 738 閱讀 5353

物件導向程式設計與傳統的過程性程式設計的區別在於,oop強調的是在執行階段(而不是編譯階段)進行決策。執行階段指的是程式正在執行時,編譯階段指的是編譯器將程式組合起來時。執行階段決策就好比度假時,選擇參觀那些景點取決於天氣和當時的心情;而編譯階段決策更像不管在什麼條件下,都堅持預先設定的日程安排。

執行階段決策提供了靈活性,可以根據當時的情況進行調整。例如,考慮為陣列分配記憶體的情況。傳統的方法是宣告乙個陣列。要在c+中宣告陣列,必須指定陣列的長度。因此,陣列長度在程式編譯時就設定好了;這就是編輯階段決策。雖有可能在80%的情況下,乙個包含20個元素的陣列足夠了,但程式有時需要處理200個元素。為了安全起見,使用了乙個包含200個元素的陣列。這樣,程式在大多數情況下都浪費了記憶體。oop通過將這樣的決策推遲給執行階段進行,使程式更靈活。在程式執行後,可以這次告訴它只需要20個元素,而且還可以下次的時候告訴它需要205個元素。

總之,使用oop時,您可以在執行階段確定陣列的長度。為了使用這種方法,語言必須允許在程式執行時建立陣列。c++採用的方法是,使用關鍵字new請求正確數量的記憶體以及使用指標來跟蹤新分配的記憶體的位置。

在執行階段作決策並非oop獨有的,單使用c++編寫這樣的**比使用c語言簡單。

使用new來分配記憶體:

int* a = new int;

使用delete釋放記憶體:

delete a;

使用new來建立動態陣列:

int* psome = new int [10];

delete psome;

指標與c 基本原理

電腦程式在儲存資料時必須跟蹤的3種基本屬性 資訊儲存在何處,儲存的值為多少,儲存的資訊時什麼型別。一種策略是定義乙個簡單變數,另一種是以指標為基礎。指標與c 基本原理 物件導向程式設計與傳統的過程性程式設計的區別在於,oop強調在執行階段 而不是編譯階段 進行決策,執行階段是程式正在執行時,編譯階段...

mysql的基本原理 Mysql 基本原理

mysql 基本原理 mysql是一種關聯式資料庫管理系統,關聯式資料庫將資料儲存在不同的表中,而不是將所有資料放在乙個大倉庫內,這樣就增加了速度並提高了靈活性 ysql是資料庫登入命令 uroot預設超級使用者登入 p 預設沒密碼 中寫密碼 mysqladmin uroot password 12...

分頁基本原理 c

分頁是web應用程式非常重要的乙個技術。資料庫中的資料可能是成千上萬的,不可能吧這麼多的資料一次顯示在瀏覽器上面。一般根據每行資料在頁面上所佔的空間每頁顯示若干行,比如一般20行是乙個比較理想的顯示狀態。分頁方法主要有以下兩種思路 1 取出所有符合條件的資料,放到資料集或者記憶體中,然後逐頁瀏覽。例...