日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
概述C#使用指針

這是C/C++程序迷們經(jīng)常談?wù)摰囊粋€(gè)話題,同時(shí)也是一個(gè)復(fù)雜的、難以理解的話題-指針!每次談到C#,大多數(shù)我遇到的人都持這樣的觀點(diǎn)-C#中沒(méi)有指針的概念。而實(shí)際上,它已經(jīng)被廢除了,取而代之的是C#中的非安全編程-如何在程序中使用指針。不同于其字面意思的是,C#使用指針編程并沒(méi)有什么不安全的。

成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的銀川網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

它如此受關(guān)注的根本原因是,非安全編程不同于習(xí)慣的.NET開(kāi)發(fā)規(guī)范,而需要編程人員進(jìn)行明確定本地環(huán)境設(shè)置(僅適用于本地執(zhí)行)。本文我將從區(qū)別兩個(gè)最容易被疑惑的概念-非安全代碼與非受控代碼開(kāi)始討論非安全編程這個(gè)主題。接下來(lái)我們將討論如何編寫(xiě)非安全代碼,亦即如何在C#使用指針。

非安全還是非受控?

受控代碼是指在CLR管理下執(zhí)行的代碼。CLR負(fù)責(zé)了許多幕后的工作:
◆管理對(duì)象的內(nèi)存
◆進(jìn)行類(lèi)型驗(yàn)證
◆垃圾回收

說(shuō)了這些,實(shí)際就是要將用戶從上述的這些工作中解脫出來(lái)了,專(zhuān)心于業(yè)務(wù)實(shí)現(xiàn)。用戶不再需要直接手工地進(jìn)行內(nèi)存操作,因?yàn)檫@些工作已由CLR完成了。

另一方面,非受控代碼就是在CLR上下文外執(zhí)行的代碼了。最好的例子就是我們平時(shí)使用的Win32 DLL,比如kernel32.dll,user32.dll以及安裝上我們系統(tǒng)上的各種COM組件。如何為它們分配內(nèi)存、如何釋放這些內(nèi)存、如何實(shí)現(xiàn)類(lèi)型驗(yàn)證?這些工作都需要它們自己來(lái)完成。一個(gè)典型的C++程序中分配一個(gè)字符指針的語(yǔ)句也是非受控代碼的另一類(lèi)例子,因?yàn)樽鳛橐幻幊陶?,你要?fù)責(zé):
◆調(diào)用內(nèi)存分配函數(shù)
◆確保類(lèi)型轉(zhuǎn)換的結(jié)果正確
◆確保指針在使用完畢后其內(nèi)存被釋放

如果你留心上面的解釋?zhuān)羞@些工作都是由CLR來(lái)完成以減輕編程者的負(fù)擔(dān)。

非安全代碼是介于受控與非受控代碼間的一種代碼類(lèi)型

非安全代碼仍然象受控代碼一樣是在CLR的管理下執(zhí)行的,但在同時(shí)它又象非受控代碼一樣允許你通過(guò)指針直接訪問(wèn)內(nèi)存。因此你獲得了兩者的優(yōu)點(diǎn)。如果你正在編寫(xiě)寫(xiě)一個(gè).NET應(yīng)用程序,但同時(shí)又希望可以廣泛使用Win32 DLL中的各種函數(shù)-需要C#使用指針的,那么此時(shí)非安全代碼就是你的救星了。

我們已經(jīng)明確了兩者的區(qū)別后,就開(kāi)始編寫(xiě)實(shí)際的代碼,毫無(wú)疑問(wèn),這才是最精彩的部分,你還在想什么呢?
深入非安全代碼

編寫(xiě)非安全代碼需要使用特殊的關(guān)鍵字unsafe與fixed。如果你還記得的話,有三種指針操作符:*  &  ->

【編輯推薦】

  1. C#特有線程功能
  2. 淺談C#對(duì)象和集合
  3. 淺析C# FTP WebRequest對(duì)象
  4. C#分部方法的應(yīng)用場(chǎng)景
  5. 概述C#線程功能

網(wǎng)站題目:概述C#使用指針
網(wǎng)站地址:http://www.5511xx.com/article/djssdod.html