指定套用註釋的時機和位置
在註解是條件式) 時,可能需要其他標記法指定該到分析器。 例如,如果有,函式可以是同步或非同步的變數,函式的行為如下:在同步處理案例它永遠是最後成功,但是,在非同步案例就會回報錯誤,如果無法立即成功。 當函式同步處理期間呼叫,檢查結果值未提供值給程式碼分析器,因為它不會傳回。 不過,當函式,便會非同步呼叫,而且函式結果不會檢查,嚴重的錯誤。 這個範例說明您可以在這個中後註釋描述的 _When_ 文件啟用檢查的情況。
結構化的註釋
若要控制註解位置和時機套用,請使用下列結構附註。
註釋 |
描述 |
---|---|
_At_(expr, anno-list) |
expr 是產生左值的運算式。 在 anno-list 的附註套用至由 expr命名的物件。 針對 anno-list的每個附註, expr 會說明在前置條件附註,則在前置條件解譯和在後置條件式註釋是否在後置條件中說明。 |
_At_buffer_(expr, iter, elem-count, anno-list) |
expr 是產生左值的運算式。 在 anno-list 的附註套用至由 expr命名的物件。 針對 anno-list的每個附註, expr 會說明在前置條件附註,則在前置條件解譯和在後置條件式註釋是否在後置條件中說明。 iter 是限定在附註變數的名稱 ( anno-list)。 iter 具有隱含型別 long。 在任何封閉範圍中的同名變數是被評估為隱藏。 elem-count 是計算結果為整數的運算式。 |
_Group_(anno-list) |
在 anno-list 的附註都會被視為具有套用至群組附註套用至每個附註的所有限定詞。 |
_When_(expr, anno-list) |
expr 是可以轉換成 bool的運算式。 當它為非零值 (true), anno-list 指定視為適用的附註。 根據預設,為 anno-list中的每個附註, expr 會說明使用輸入值,如果註解是前置條件,並使用輸出值附註,則是後置條件。 若要覆寫預設值,您可以使用 _Old_ 本質,當您評估後置條件值時應該使用輸入值。
注意事項
不同的附註可能讓做為使用 _When_ ,如果可變值 (例如, *pLength) 時,因為 expr 已評估的結果在前置條件的可能與其在後置條件中評估的結果不同。
|