亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 函數的字符參數加不加const關鍵字有何區別 (2000年.txt

?? delphi 編程技巧
?? TXT
字號:
函數的字符參數加不加const關鍵字有何區別 (2000年11月29日) 

本站更新  分類:   作者:Delphi大富翁  推薦:   閱讀次數:525  
(http://www.codesky.net)  

--------------------------------------------------------------------------------
函數的字符參數加不加const關鍵字有何區別(100分) 
問題的分類是:Object Pascal , 分壇主: menxin, 分壇主: cAkk 

來自:yinglw 時間:00-5-14 23:30:41 ID:244936 
function sendmessage(msg:string);
function sendmessage(const msg:string);
有何區別?





--------------------------------------------------------------------------------
來自:沈前衛 時間:00-5-14 23:59:04 ID:244963 
你為何不侃侃Delphi的幫助呢?

Using const allows the compiler to optimize code for structured- and 
string-type parameters. It also provides a safeguard against 
unintentionally passing a parameter by reference to another routine.

Here, for example, is the header for the CompareStr function in the 
SysUtils unit:

function CompareStr(const S1, S2: string): Integer;

Because S1 and S2 are not modified in the body of CompareStr, they 
can be declared as constant parameters.



--------------------------------------------------------------------------------
來自:zensst 時間:00-5-15 01:09:56 ID:245039 
好象是這樣的:
在Delphi中,String 已經是一個指針了。通過ViewCPU可以發現,如果加了
Const ,僅僅傳遞指向 String 的指針;而不加 Const,卻傳遞的是指向 String
結構的指針,通過 LStrAddRef等方法取的 String 做為參數,機器碼多了很多。




--------------------------------------------------------------------------------
來自:老屯 時間:00-5-15 01:15:12 ID:245045 
對于字符串,沒有什么區別
對于數值有點區別
比如說你用了一個整數常熟在一個過程里,可以使用該常數定義數組下標
procedure Test(const n: integer);
var
narray: array [0..n] of something;
begin
end;

另外說明為常數在子程序中只能作為常數使用,不能作為局部變量改變它的值
procedure test(const n: integer);
begin
n := n + 3; //這是不允許的
end;
procedure test(n: integer);
begin
n := n + 3; //這是允許的,n相當于過程里面的局部變量
end;



--------------------------------------------------------------------------------
來自:yinglw 時間:00-5-20 10:14:23 ID:248907 
當我這樣寫的時候
function sendmessage(const msg:string);

調用此函數時可以用字符數組
var
arr: array[0..10] of char;
begin
StrCopy(arr,'test');
sendmessage(arr);
end;
不知這種用法是否比較安全可靠,符合規范



--------------------------------------------------------------------------------
來自:zensst 時間:00-5-20 14:18:41 ID:249074 
不明白



--------------------------------------------------------------------------------
來自:zensst 時間:00-5-20 14:25:01 ID:249083 
是對的。



--------------------------------------------------------------------------------
來自:color 時間:00-5-20 15:42:31 ID:249150 
對數值型意義不大,因為DELPHI總優先使用寄存器傳值。
對字符串型,CONST只傳遞該字符串的指針,以后程序不可修改此字符串,
無CONST,DELPHI要先將該STRING傳到內部堆中,以利于修改,并不影響
原先的STRING。
當不想發展該STRING進行修改時,應優先使用(CONST s:STRING)



--------------------------------------------------------------------------------
來自:WuWZY 時間:00-5-21 15:35:00 ID:250038 
const可以保護變量在子程序中不改變
而且它是傳址的,對于大的紀錄,速度快!



--------------------------------------------------------------------------------
來自:buptwqs 時間:00-5-21 16:21:39 ID:250061 
加了const的在傳參數時是傳一個常量值,而不是一個變量;
不加const的是傳一個變量值,但變量的值在過程中不改變。



--------------------------------------------------------------------------------
來自:cch_b 時間:00-5-21 16:55:44 ID:250084 
說得過于復雜了,簡單說,加了那個的話在函數中就無法修改msg了,



--------------------------------------------------------------------------------
來自:敏哥 時間:00-6-4 13:49:53 ID:259752 
以上各位說法有不少錯誤,糾正如下:
Const參數的傳遞方式與參數類型相關,有數值傳送和地址傳送兩種。對于結
構類型、串類型(包括短串)、Variant、動態數組,Const參數傳遞的是地址,
比無Const參數傳遞效率高。
長串實際上是個隱含的指針,長串參數的傳遞方式比較特殊,無論有無Const
都只傳遞長串的指針值,它指向動態分配內存區(堆)。有Const的長串參數在
函數內是只讀的,無Const的長串參數在函數內部可修改,雖然它與實參指向同
一快內存,但由于長串具有“copy-on-write”特性,在對長串形參進行修改前
將復制出新的長串,故不影響實參。
短串參數也只傳遞32bit的指針,無Const時,函數將在堆棧中預留的256Byte
空間內復制出新的短串,作為形式參數使用。
總之,Var參數一律只傳地址;有Const的參數是只讀的;無Const的參數復制
于堆棧中,象局部變量一樣可讀可寫,不影響實參。





--------------------------------------------------------------------------------
來自:千中元 時間:00-6-4 14:06:36 ID:259764 
yinglw請在最后給我一分



--------------------------------------------------------------------------------
來自:敏哥 時間:00-6-4 21:41:57 ID:259976 
調用函數/過程時,要求形參和實參賦值兼容。
字符數組可以直接賦給長串、短串,但長串、短串及PChar都不能直接賦給字
符數組;當{$X+}擴充語法打開時,索引下界為零的字符數組可以直接賦給
PChar,也可以接受字符串常量的賦值。字符串和字符數組之間的轉換由編譯器
自動調用System單元的一些匯編函數實現,如:_ArrayToPasStr、_LStrFromArray。
所以調用sendmessage函數時可以用字符數組,是符合Object Pascal語法的。

function sendmessage(const msg:string);

var
arr: array[0..10] of char;
begin
StrCopy(arr,'test');
sendmessage(arr);
end;



--------------------------------------------------------------------------------
來自:Kang 時間:00-6-4 21:49:35 ID:259980 
對字符串用const有個最大的好處,能優化
 
 


--------------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美性猛交xxxx黑人交| 欧美在线短视频| 精品亚洲欧美一区| 日韩黄色小视频| 美女网站在线免费欧美精品| 舔着乳尖日韩一区| 日韩精品视频网站| 久久精品国产一区二区三区免费看| 图片区日韩欧美亚洲| 午夜视频在线观看一区| 蜜臀av一级做a爰片久久| 日本一不卡视频| 国产一区三区三区| 成人av集中营| 色婷婷亚洲一区二区三区| 欧美午夜不卡在线观看免费| 欧美日韩第一区日日骚| 日韩午夜精品电影| 久久蜜臀中文字幕| 亚洲精品一卡二卡| 日韩av在线免费观看不卡| 激情综合色丁香一区二区| 国产东北露脸精品视频| 91亚洲精品久久久蜜桃网站| 欧美在线免费视屏| 日韩欧美成人午夜| 国产精品成人在线观看| 午夜精品久久久久久久99樱桃| 蜜桃免费网站一区二区三区| 国产高清无密码一区二区三区| av网站一区二区三区| 欧美写真视频网站| 久久精品一区二区三区不卡牛牛| 自拍偷自拍亚洲精品播放| 天天影视色香欲综合网老头| 精品一区二区三区的国产在线播放| 国产成人精品1024| 欧美日韩不卡一区二区| 国产色婷婷亚洲99精品小说| 一个色在线综合| 韩国三级电影一区二区| 欧美在线免费观看亚洲| 久久久久高清精品| 亚洲国产成人tv| 成人av在线电影| 欧美一级日韩一级| 亚洲美女屁股眼交3| 国内精品嫩模私拍在线| 欧美日韩一区三区| 日本一二三四高清不卡| 免费日本视频一区| 欧美日韩一区二区三区高清| 国产日本欧洲亚洲| 九九久久精品视频| 欧美精品xxxxbbbb| 一区二区三区在线观看国产| 国产一区二区按摩在线观看| 欧美日韩国产首页| 亚洲乱码国产乱码精品精小说 | 国产午夜精品一区二区| 亚洲综合网站在线观看| 不卡大黄网站免费看| 日本一区二区三区久久久久久久久不 | 国产精品自拍毛片| 日韩精品一区二区三区老鸭窝| 亚洲图片有声小说| 欧美日韩免费高清一区色橹橹 | 91精品国产免费久久综合| 一区二区三区91| 91视视频在线直接观看在线看网页在线看 | 夜色激情一区二区| 91麻豆精品一区二区三区| 国产网站一区二区三区| 国内外精品视频| 欧美精品一区二区三区视频| 久久成人麻豆午夜电影| 91精品免费在线| 日韩国产在线一| 这里是久久伊人| 日本特黄久久久高潮| 制服丝袜中文字幕亚洲| 无吗不卡中文字幕| 欧美一级日韩一级| 狠狠狠色丁香婷婷综合激情| 精品国产a毛片| 懂色av中文字幕一区二区三区 | 亚洲福利电影网| 欧美群妇大交群中文字幕| 午夜不卡在线视频| 日韩一二三区不卡| 国产在线播放一区二区三区| 久久婷婷国产综合国色天香 | 国产大陆精品国产| 中文字幕亚洲视频| 欧美中文一区二区三区| 蜜臀av一区二区| 国产欧美一区二区精品秋霞影院| 欧美在线制服丝袜| 成人欧美一区二区三区视频网页| 久久综合九色综合欧美98 | 69av一区二区三区| 免费看欧美女人艹b| 久久婷婷国产综合国色天香| eeuss鲁片一区二区三区在线看| 亚洲精品视频自拍| 日韩三级.com| 成人黄动漫网站免费app| 亚洲图片自拍偷拍| 久久综合九色综合久久久精品综合| 成人午夜av在线| 午夜亚洲国产au精品一区二区| 精品日产卡一卡二卡麻豆| 成人小视频在线| 亚洲第一福利一区| 国产三级精品视频| 欧美在线观看一区| 国产一区二区三区四| 亚洲一区二区三区三| 国产午夜精品在线观看| 欧美日韩一级片在线观看| 国产精品影音先锋| 日韩精品高清不卡| 亚洲精选一二三| 国产亚洲成年网址在线观看| 在线电影国产精品| 99久久免费精品高清特色大片| 美腿丝袜亚洲三区| 一区二区三区在线观看动漫| 国产午夜精品理论片a级大结局| 欧美午夜宅男影院| 99re视频精品| 国产成人午夜片在线观看高清观看| 亚洲精品美腿丝袜| 欧美国产一区二区| 久久久久免费观看| 日韩精品一区二区三区视频播放 | 麻豆精品视频在线观看视频| 最新日韩在线视频| 国产午夜精品美女毛片视频| 4hu四虎永久在线影院成人| 91免费看片在线观看| 99视频一区二区| 成人激情小说乱人伦| 国内一区二区在线| 精品一区二区三区免费播放 | 久久综合色鬼综合色| 欧美精品一级二级| 欧美三级日韩在线| 91在线观看污| 不卡的电影网站| 成人av午夜影院| 成人美女视频在线观看18| 国产老女人精品毛片久久| 蜜臀91精品一区二区三区| 日本视频一区二区| 老司机午夜精品99久久| 开心九九激情九九欧美日韩精美视频电影| 亚洲国产成人va在线观看天堂 | 666欧美在线视频| 欧美剧在线免费观看网站| 9191精品国产综合久久久久久| 精品视频资源站| 91精品在线观看入口| 日韩一区二区三区在线| 欧美成人欧美edvon| 精品国产乱码久久久久久牛牛| 久久亚洲一区二区三区明星换脸| 国产无人区一区二区三区| 中文字幕亚洲一区二区va在线| 亚洲欧美一区二区三区久本道91| 樱桃国产成人精品视频| 亚洲成人激情综合网| 美女性感视频久久| 国产成人免费在线| 色综合久久天天| 欧美精品在线一区二区| 欧美成人福利视频| 中文字幕精品三区| 亚洲动漫第一页| 国模无码大尺度一区二区三区 | 亚洲色图视频网站| 亚洲成av人片| 国产成都精品91一区二区三| 99精品欧美一区二区三区综合在线| 欧美网站大全在线观看| 精品国产一区二区精华| 国产精品大尺度| 视频一区国产视频| www.激情成人| 欧美精品亚洲二区| 国产精品毛片久久久久久| 亚洲国产aⅴ天堂久久| 国产又黄又大久久| 欧美四级电影网| 亚洲国产精品成人综合| 视频一区在线视频| 91免费观看视频在线| 精品国产麻豆免费人成网站| 成人免费在线观看入口| 精品一区二区久久|