c++智能指針 C 的智能指針不就基本解決了野指針問(wèn)題了嗎?為什么還要吹捧rust的內(nèi)存安全?
C 的智能指針不就基本解決了野指針問(wèn)題了嗎?為什么還要吹捧rust的內(nèi)存安全?從編譯器階段開(kāi)始,rust就消除了內(nèi)存安全問(wèn)題,包括單線程和多線程。這是由于編譯器級(jí)別的rust的復(fù)雜所有權(quán)機(jī)制,這使
C 的智能指針不就基本解決了野指針問(wèn)題了嗎?為什么還要吹捧rust的內(nèi)存安全?
從編譯器階段開(kāi)始,rust就消除了內(nèi)存安全問(wèn)題,包括單線程和多線程。這是由于編譯器級(jí)別的rust的復(fù)雜所有權(quán)機(jī)制,這使得任何人都不可能編寫(xiě)不安全的代碼。這就是法律體系。
使用C/C,世界上沒(méi)有一個(gè)程序員能夠保證代碼的絕對(duì)內(nèi)存安全性。雖然C是一個(gè)屠龍者,但這個(gè)問(wèn)題也非常重要。也就是說(shuō),沒(méi)有辦法保證代碼的內(nèi)存安全和線程安全。
C智能指針,或者在使用過(guò)程中出現(xiàn)問(wèn)題,例如多線程環(huán)境中的最新共享uptr,如果程序員忘記執(zhí)行鎖定操作怎么辦?這不會(huì)發(fā)生在信任的情況下。使用arc機(jī)制,如果不鎖定,就無(wú)法訪問(wèn)數(shù)據(jù)。即使在單線程環(huán)境中,您能保證所有程序員都不會(huì)傳遞智能指針實(shí)例的引用嗎?太多了。C無(wú)法在編譯時(shí)發(fā)現(xiàn)這些問(wèn)題。
鐵銹是法治,而不是人治。數(shù)據(jù)訪問(wèn)沖突,根本無(wú)法編譯
軟件開(kāi)發(fā)有前途嗎?
人才短缺,前景無(wú)限。