国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

關于使用VB.NET ANY問題要點總結

開發 后端
這里介紹了關于使用VB.NET ANY時遇到的問題,在VB里大多數時候,我們使用Any就是為了使用void*,文章有詳細的分析。

我們在使用指針的時候會運到很多問題,不知道你們在編程中遇到過沒有,這里把我也前遇到的問題分享給大家一些。Any不是一個真正的類型,它只是告訴VB編譯器放棄對參數類型的檢查,這樣,理論上,我們可以將任何類型傳遞給API。Any在什么地方用呢?讓我們來看看,在VB文檔里的是怎么說的,現在就請打開MSDN(Visual Studio 6自帶的版本),翻到"Visual Basic文檔"->"使用Visual Basic"->"部件工具指南"->"訪問DLL和Windows API"部分,再看看"將 C 語言聲明轉換為 Visual Basic 聲明"這一節。文檔里告訴我們,只有C的聲明為LPVOID和NULL時,我們才用VB.NET ANY。實際上如果你愿意承擔風險,所有的類型你都可以用Any。當然,也可以如我所說,永遠不要用VB.NET ANY。

為什么要這樣?那為什么VB官方還要提供Any?是信我的,還是信VB官方的?有什么道理不用VB.NET ANY?

#T#如前面所說,VB官方不鼓勵我們使用指針。因為VB所標榜的優點之一,就是沒有危險的指針操作,所以的內存訪問都是受VB運行時庫控制的。在這一點上,JAVA語言也有著同樣的標榜。但是,同JAVA一樣,VB要避免使用指針而得到更高的安全性,就必須要克服沒有指針而帶來的問題。VB已經盡***的努力來使我們遠離指針的同時擁有強類型檢查帶來的安全性。但是操作系統是C寫的,里面到處都需要指針,有些指針是沒有類型的,就是C程序員常說的可怕的 void*無類型指針。它沒有類型,因此它可以表示所有類型。如CopyMemory所對應的是C語言的memcpy,它的聲明如下:

  1. void *memcpy( void *dest, const void *src, size_t count ); 

因memcpy前兩個參數用的是void*,因此任何類型的參數都可以傳遞給他。一個用C的程序員,應該知道在C函數庫里這樣的void*并不少見,也應該知道它有多危險。無論傳遞什么類型的變量指針給上面memcpy的void*,C編譯器都不會報錯或給任何警告。在VB里大多數時候,我們使用Any就是為了使用void*,和在C里一樣,VB也不對Any進行類型檢查,我們也可以傳遞任何類型給Any,VB編譯器也都不會報錯或給任何警告。但程序運行時會不會出錯,就要看使用它時是不是小心了。正因為在C里很多錯誤是和void*相關的,所以,C++鼓勵我們使用satic_cast來明確指出這種不安全的類型的轉換,已利于發現錯誤。

說了這么多C/C++,其實我是想告訴所有VB的程序員,在使用Any時,我們必須和C/C++程序員使用void*一樣要高度小心。 VB里沒有satic_cast這種東西,但我們可以在傳遞指針時明確的使用long類型,并且用VarPtr來取得參數的指針,這樣至少已經明確地指出我們在使用危險的指針。如程序二經過這樣的處理就成了下面的程序:

  1. '使用更安全的CopyMemory,明確的使用指針!  
  2. Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal Destination As Long, ByVal Source As Long, ByVal Length As Long)  
  3. Sub SwapStrPtr2(sA As String, sB As String)  
  4. Dim lTmp As Long  
  5. Dim pTmp As Long, psA As Long, psB As Long  
  6. pTmp = VarPtr(lTmp): psA = VarPtr(sA): psB = VarPtr(sB)  
  7. CopyMemory pTmp, psA, 4  
  8. CopyMemory psA, psB, 4  
  9. CopyMemory psB, pTmp, 4  
  10. End Sub   
責任編輯:田樹 來源: 博客
相關推薦

2009-11-10 15:30:46

VB.NET編程原則

2009-11-11 14:34:14

VB.NET動態連接庫

2010-01-22 10:27:02

VB.NET類型提升

2009-11-10 10:28:20

VB.NET誕生

2009-11-10 15:36:24

VB.NET命名約定

2009-10-28 09:21:19

VB.NET技術

2009-11-03 10:51:33

VB.NET共享

2010-01-12 16:39:26

VB.NET數據綁定

2009-11-10 13:08:13

VB.NET編程技巧

2009-11-02 13:14:18

VB.NET函數

2010-01-20 17:54:13

VB.NET特殊字符

2009-10-29 16:01:54

VB.NET資源文件

2009-10-14 17:08:44

VB.NET使用Fil

2010-01-11 16:04:10

VB.NET使用wit

2009-10-26 15:57:07

VB.NET使用Ora

2009-11-03 13:48:02

VB.NET枚舉

2009-10-23 13:40:09

VB.NET基類

2009-10-27 11:39:03

VB.NET事件處理程

2009-10-09 17:40:38

VB.Net問題集

2010-01-07 13:51:50

VB.NET數組賦值
點贊
收藏

51CTO技術棧公眾號

色婷婷综合成人av| 亚洲精品乱码久久久久久蜜桃91 | 欧美日韩免费一区二区三区视频| 麻豆91蜜桃| 网友自拍区视频精品| 91精品蜜臀在线一区尤物| 中文字幕国内自拍| 韩国一区二区视频| 国产精品视频一区二区三区经| 亚洲一区二区三区日本久久九| 日韩久久久久久| 亚州色图欧美色图| 亚洲国产成人午夜在线一区| 99re99热| 麻豆精品网站| 国产区精品在线观看| 久久在线观看| 亚洲色图在线观看| 色网站免费在线观看| 中文字幕一区在线观看| 强开小嫩苞一区二区三区网站| 免费一区二区三区视频导航| 久久天天躁狠狠躁夜夜躁| www.在线视频| 色中色一区二区| 亚洲精品一区二区| 国产精品久线在线观看| 日韩国产一级片| 激情六月婷婷综合| 日韩成人av网站| 亚洲片区在线| 不卡视频一区二区三区| 中文有码一区| 97超级碰碰碰久久久| se69色成人网wwwsex| 国产视频久久久| 人人草在线视频| 亚洲高清在线观看| 九色porny丨首页入口在线| 日韩视频一区二区| aaa大片在线观看| 日韩一区二区影院| 黄网站免费在线观看| 欧美精品在线观看一区二区| 97在线观看免费观看高清| 欧美色大人视频| 国产精品秘入口| 欧美少妇性性性| 成人在线观看亚洲| 亚洲国产福利在线| 欧美不卡高清一区二区三区| 亚洲一区第一页| 精品176极品一区| 欧美成人午夜激情在线| 97一区二区国产好的精华液| 欧美性做爰毛片| 日韩国产一区二区| 国产精品v欧美精品∨日韩| 亚洲精品韩国| 亚洲一区二区三区精品动漫| 国产激情一区二区三区桃花岛亚洲| 欧美 国产 精品| 久久综合网色—综合色88| 国产区二区三区| 亚洲午夜在线观看视频在线| 十九岁完整版在线观看好看云免费| 欧美性猛交xxxxxxxx| 国产美女情趣调教h一区二区| 亚洲国产精品视频在线观看| 亚洲一区二区av| 日韩美女毛茸茸| 亚洲一级网站| 青青草综合在线| 欧美激情一区二区三区四区| 在线观看视频色潮| 精品成a人在线观看| 不卡精品视频| 国产精品综合网站| 久热精品视频| 国产第一页视频| 91国在线观看| 电影亚洲精品噜噜在线观看| 97超级碰在线看视频免费在线看 | 99色这里只有精品| 国产精品乱码一区二三区小蝌蚪| 在线免费观看h| 亚洲高清久久网| 日韩综合一区二区三区| 国产欧美一区二区三区在线看 | 日本久久久精品视频| 国产精品美日韩| 成人亚洲性情网站www在线观看| 亚洲精品一区二区三区99| 日本亚州欧洲精品不卡| 91麻豆国产语对白在线观看| 韩国午夜理伦三级不卡影院| 黄色永久免费网站| 欧美另类久久久品| 亚洲视频一起| 欧美日本亚洲| 夜夜爽夜夜爽精品视频| 涩涩av在线| 91亚洲精品视频| 26uuu久久天堂性欧美| 成人精品福利| 久久久久久18| 日日摸夜夜添夜夜添国产精品| 在线观看高清免费视频| 欧美一区二区观看视频| 亚洲色图丝袜| 国产91视频一区| 色综合久久中文综合久久97 | 精品久久中文字幕久久av| 成人性生交大片免费看在线播放| 78m国产成人精品视频| 日本不卡不码高清免费观看| 激情乱色小说视频| 亚洲色图美腿丝袜| 伊人蜜桃色噜噜激情综合| jizz欧美性11| 一本色道久久综合狠狠躁篇怎么玩| 中文字幕一区二区三区在线视频| 六月丁香婷婷在线| 欧美日韩国产美| 免费国产自久久久久三四区久久| 黄色激情在线视频| 精品国产区一区| 黑人一区二区| 婷婷福利视频导航| 欧美成人h版在线观看| 蜜臀久久99精品久久久久久9| 亚洲kkk444kkk在线观看| 97热在线精品视频在线观看| 国产成人一级电影| 成人video亚洲精品| 成人免费看黄网站| 欧美国产日本视频| 伊人久久大香| 波多野结衣与黑人| 亚洲黄色www| 丝袜亚洲另类欧美| 视频免费一区| 国产一区二区三区奇米久涩| 午夜av电影一区| 久久综合欧美| 一区二区三区视频在线观看免费| 在线免费观看羞羞视频一区二区| 青青青爽久久午夜综合久久午夜| 午夜视频成人| 就去色蜜桃综合| 3d成人h动漫网站入口| 欧美三级不卡| 成黄免费在线| 国产女人水真多18毛片18精品 | 国产欧美一区二区精品久导航| 性国裸体高清亚洲| 亚洲一区三区视频在线观看| 欧美一区二区网站| 亚洲精品一级| 成人欧美在线| 深田咏美在线x99av| 精品成人一区二区三区四区| 麻豆91在线观看| 九色porny丨首页入口在线| 亚洲精品一区二区三| 亚洲国产精品va在线看黑人动漫| 免费观看30秒视频久久| 青草影视电视剧免费播放在线观看| 久草精品电影| 精品国产一区二区在线观看| 久久99精品国产.久久久久| 97成人资源| 久久国产成人精品国产成人亚洲| 日韩中文视频免费在线观看| 久久久噜噜噜久久中文字幕色伊伊| 亚洲视频精选| 伊人春色在线| 国产麻豆日韩| 亚洲成人av资源网| 国产成a人亚洲精品| 秋霞一区二区| 黄动漫视频高清在线| 成人免费网站在线观看| 欧美性色综合网| 免费的成人av| 9999在线精品视频| 特黄特色特刺激视频免费播放| 91在线精品视频| 精品国产乱码久久久久久蜜臀| 精品一区二区三区蜜桃| 日韩成人18| 欧美在线一卡| 中文字幕日韩一区二区三区不卡| 久久夜色精品国产欧美乱| 一区二区三区在线视频免费观看| 91精品秘密在线观看| xxx性欧美| 向日葵污视频在线观看| 高清一区二区三区视频| 亚洲伦理中文字幕|