課程
/后端開發(fā)
/C++
/C++遠(yuǎn)征之離港篇
為什么要申請(qǐng)內(nèi)存,直接賦值不更好嗎?
2016-06-30
源自:C++遠(yuǎn)征之離港篇 5-2
正在回答
因?yàn)榉奖悖冶苊赓Y源沖突
影衣 提問者
這個(gè)回答太簡潔,我打個(gè)比方:
假設(shè)A和B公司都需要一個(gè)程序錄入學(xué)生的數(shù)據(jù),
你直接在程序上寫,考慮未來用戶的公司規(guī)模,你是不是直接寫一個(gè)占用10000個(gè)空間的數(shù)據(jù)呢?
A是家小公司,只有50個(gè)人,用戶在使用時(shí),只需50個(gè)人的數(shù)據(jù)內(nèi)存空間就夠了,而明明只有50條數(shù)據(jù),你的程序卻要在系統(tǒng)中多占用9950的內(nèi)存資源。
不論規(guī)模如何,這個(gè)程序都(只會(huì))占用掉10000條數(shù)據(jù)的內(nèi)存空間,不能再多,也不能再少。
B是家大公司,有20000人,用戶在使用時(shí),需要存儲(chǔ)20000人的數(shù)據(jù),20000條內(nèi)存資源,而你的程序只能容納10000人的數(shù)據(jù)。
如果使用申請(qǐng)內(nèi)存,在操作系統(tǒng)申請(qǐng)時(shí)需要在程序處做一個(gè)輸入,通過程序向操作系統(tǒng)申請(qǐng)50人的內(nèi)存資源空間,這時(shí)這個(gè)程序不多不少,剛好占用了50條數(shù)據(jù)的內(nèi)存資源,不會(huì)有多余的浪費(fèi)。
而公司規(guī)模大的時(shí)候,不管公司是上萬人還是上百萬,你的程序都可以容納,只要用戶的計(jì)算機(jī)內(nèi)存夠大,申請(qǐng)多少內(nèi)存資源都沒問題。
而釋放內(nèi)存呢,當(dāng)有一個(gè)人辭職離開公司的時(shí)候,你可以釋放掉1個(gè)內(nèi)存資源,當(dāng)有新員工加入的時(shí)候,程序可以向操作系統(tǒng)申請(qǐng)1個(gè)內(nèi)存資源,每次占用的內(nèi)存資源空間都剛剛好,程序占用內(nèi)存的大小,盡用戶掌控之內(nèi),不受代碼限制,不多不少,走多少釋放多少。
舉報(bào)
C++掃清通往面向?qū)ο蟮淖詈笠坏勒系K,將所有知識(shí)點(diǎn)融會(huì)貫通
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-07-01
因?yàn)榉奖悖冶苊赓Y源沖突
2016-12-01
這個(gè)回答太簡潔,我打個(gè)比方:
假設(shè)A和B公司都需要一個(gè)程序錄入學(xué)生的數(shù)據(jù),
你直接在程序上寫,考慮未來用戶的公司規(guī)模,你是不是直接寫一個(gè)占用10000個(gè)空間的數(shù)據(jù)呢?
A是家小公司,只有50個(gè)人,用戶在使用時(shí),只需50個(gè)人的數(shù)據(jù)內(nèi)存空間就夠了,而明明只有50條數(shù)據(jù),你的程序卻要在系統(tǒng)中多占用9950的內(nèi)存資源。
不論規(guī)模如何,這個(gè)程序都(只會(huì))占用掉10000條數(shù)據(jù)的內(nèi)存空間,不能再多,也不能再少。
B是家大公司,有20000人,用戶在使用時(shí),需要存儲(chǔ)20000人的數(shù)據(jù),20000條內(nèi)存資源,而你的程序只能容納10000人的數(shù)據(jù)。
如果使用申請(qǐng)內(nèi)存,在操作系統(tǒng)申請(qǐng)時(shí)需要在程序處做一個(gè)輸入,通過程序向操作系統(tǒng)申請(qǐng)50人的內(nèi)存資源空間,這時(shí)這個(gè)程序不多不少,剛好占用了50條數(shù)據(jù)的內(nèi)存資源,不會(huì)有多余的浪費(fèi)。
而公司規(guī)模大的時(shí)候,不管公司是上萬人還是上百萬,你的程序都可以容納,只要用戶的計(jì)算機(jī)內(nèi)存夠大,申請(qǐng)多少內(nèi)存資源都沒問題。
而釋放內(nèi)存呢,當(dāng)有一個(gè)人辭職離開公司的時(shí)候,你可以釋放掉1個(gè)內(nèi)存資源,當(dāng)有新員工加入的時(shí)候,程序可以向操作系統(tǒng)申請(qǐng)1個(gè)內(nèi)存資源,每次占用的內(nèi)存資源空間都剛剛好,程序占用內(nèi)存的大小,盡用戶掌控之內(nèi),不受代碼限制,不多不少,走多少釋放多少。