@position 指示詞
更新:2007 年 11 月
在錯誤訊息中提供有意義的位置資訊。
@set @position(end | [file = fname ;] [line = lnum ;] [column = cnum])
引數
fname
如果使用 file,此引數為必要項。表示檔案名稱的字串常值 (String Literal)、具有或不具有磁碟機或路徑資訊。lnum
如果使用 line,此引數為必要項。任何非負整數,表示作者所撰寫的程式碼行。cnum
如果使用 column,此引數為必要項。任何非負整數,表示作者程式碼中的資料行。
備註
JScript 作者撰寫的程式碼有時會與實際編譯和執行的程式碼不同。主機環境 (例如 ASP.NET) 或開發工具可能會產生自己的程式碼,並將這些程式碼加入程式中。作者通常對這些程式碼不感興趣,但是在發生錯誤時卻可能讓作者感到困惑。
編譯器可能會不正確地辨識原來撰寫的程式碼中不存在的錯誤行,而不是正確辨識作者程式碼中發生錯誤的行號。這是因為額外產生的程式碼會改變作者原始程式碼的相關位置。
範例
在下列範例中,檔案中的行號會變更以符合由 JScript 主應用程式 (Host) 插入作者程式碼的程式碼。左欄位中的行號表示使用者所看到原來的原始程式碼。
01 .. // 10 lines of host-inserted code.
.. .. //...
10 .. // End of host-inserted code.
11 .. @set @position(line = 1)
12 01 var i : int = 42;
13 02 var x = ; // Error reported as being on line 2.
14 03 //Remainder of file.