1、malloc、free 與 new 、delete的區別
首先malloc、free 屬於c的一組庫函式,new delete 屬於c++的一組運算子。 功能都是開闢和釋放記憶體空間。 但是區別在於。new 和delete運算子 在開闢空間的時候會呼叫類的建構函式和析構函式。 而malloc free 則沒有這項功能。(c裡面也沒有類的概念)
2、c++空類預設產生哪些類成員函式?
編譯器自動產生4個函式,預設的 建構函式、析構函式、拷貝建構函式、賦值函式。
3、c++中析構函式可以是內聯函式
4、c++中的delete 和 delete 的區別。
1、對於基本型別(int ,char,float 等),開闢的記憶體空間,使用兩個操作符均可以將記憶體釋放。
char *a=new char[300];
delete a; //or delete a; 均可以
2、對於自定義的類的型別,開闢類陣列的記憶體空間後,釋放記憶體要使用delete, 如果使用delete, 也可以釋放記憶體,但卻不會呼叫類的
析構函式,導致類內的釋放操作不完整。
class t;
t* t=new t[20];
delete t;//只會呼叫t[0]的析構函式,其他的物件均釋放記憶體後不呼叫析構函式。
delete t;//釋放記憶體,而且會呼叫相應的析構函式。
SQL備忘記錄
一 with as的含義 with as短語,也叫做子查詢部分 subquery factoring 可以讓你做很多事情,定義乙個sql片斷,該sql片斷會被整個sql語句所用到。有的時候,是為了讓sql語句的可讀性更高些,也有可能是在union all的不同部分,作為提供資料的部分。特別對於uni...
sql備忘記錄
spark sql 當前日期 current date 顯示當前日期 年月日時分秒 year,month,day,hour,minute,second 例 year 2018 09 20 2018 第幾周,第幾天 weekofyear,dayofyear weekofyear x xx xx mys...
FFmpeg 學習記錄(備忘)
目錄 1.ubuntu環境下 1.1 開啟攝像頭實時監控 1.2 檢視支援的格式 1.3 開啟攝像頭並且儲存錄影 1.4 開啟攝像頭並且rtmp推流 2.windows環境下 2.1 開啟攝像頭實時監控 3.參考文章 ffplay f video4linux2 framerate 30 video ...