程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 區分保留字跟關鍵字

區分保留字跟關鍵字

編輯:Delphi

       我最近在看李維的<Inside VCL>.李維在書中第一章中舉的第一個console程序中有以下的函數聲明:

  function WindowProc(Window:HWND;AMessage:UINT;WParam:WPARAM;LParam:LPARAM):LRESULT;stdcall;export;

  不知道你想過一個問題沒:在Delphi中是不區分大小寫的,也就是說這裡的聲明中變量名和類型名相同了.而我們在學Pascal,C/C++的時候,老師常對我們說不能去關鍵字作為變量名,為什麼這裡又能使用呢?

       我剛開始看到這裡的時候很困惑,所以我查看了Dephi7的<Delphi Language Guide>,終於找到了答案:那就是保留字(Directives)跟關鍵字(Reserved Words)的區別.

      在<Delphi Language Guide>中提到:The following reserved Words cannot be redefined or used as identifIErs.也就是說關鍵字是不能作為變量名的.書中對保留字的說明如下:

  Directives are Words that are sensitive in specific locations within source code. DerIEctives have special meanings in the Delphi language,but unlike reserved Words,appear only in contexts where user-defined identifiers cannot occured.Heance-although it is inadvisable to do so-you can define an identifIEr  that looks exactly like a directive.也就是說保留字則是可以用作變量名的.

      這就解釋了為什麼在前面的函數聲明中允許出現WParam:WPARAM;這種聲明.順便說一下的是李維在<Inside VCL>一書中的第31頁小字解說部分說"C/C++ Builder為了更好的執行效率而使用了關鍵字message來分派窗口消息...",這裡關鍵字應該改為保留字才對,因為Message是保留字而非關鍵字.我們在閱讀VCL的源代碼時也常可以看到用Message作為變量名的.

   

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved