棧和堆的概念以及優缺點?
棧,就是那些由編譯器在需要的時候分配,在不需要的時候自動清除的變量的存儲區。里面的變量通常是局部變量、函數參數等。
堆,就是那些由new分配的內存塊,他們的釋放編譯器不去管,由我們的應用程序去控制,一般一個new就要對應一個delete。如果程序員沒有釋放掉,那么在程序結束后,操作系統會自動回收。優缺點:堆得優點就是可以動態分配內存大小,生存期也不必告訴編譯器,因為它是在運行中動態分配內存的;缺點就是由于是在運行時動態分配內存的,所以讀取速度較慢。
棧的優點就是讀取速度快,而且數據可以共享;缺點就是存在于棧中的數據大小及周期必須是確定的,缺乏靈活性。
上一篇知道顏色代碼如何使用
下一篇生物醫學博士的就業難