2017-03-12

Visual Studio 建置前事件( Pre-build Event ) / 建置後事件( Post-build Event) - PART 2

之前文章 Visual Studio 建置前事件( Pre-build Event ) / 建置後事件( Post-build Event) 介紹到該如何使用 visual studio 的兩種 build event 跟內建的巨集。後來同事問幾個相關問題,馬上就漏氣,查了資料立馬來紀錄一下


撰寫原則

  1. 執行內容以 () 包著

    • 判斷式與執行內容皆在同一行
    • 正確範例
      • IF 1 == 3 (echo "pass") ELSE (echo "fail")
      • 印出正確資訊

        2correct

    • 錯誤範例
      • IF 1 == 3 echo "pass" ELSE echo "fail"
      • 無法印出正確資訊

        1wonge

  2. 多行運算式需留意 () 位置

    • 判斷式與執行內容橫跨多行
    • ( 在前一行運算式結尾,)在當行運算式開頭 --> 比照 javascript 慣例
    • 正確範例
      IF 1 == 3  (
      echo "pass"
      ) ELSE (
      echo "fail"
      )
      

      3mutiplepass

    • 錯誤範例
      • "(" 在運算式的開頭
        IF 1 == 3
        (echo "pass"
        ) ELSE 
        (echo "fail"
        )
        

        4mutiplewrong

  3. 邏輯判斷式與保留字間需留意間距

    • 判斷式與 IF( 須有空格
      • 正確範例
        IF 1 == 3 (
        

        5CORRECT

      • 錯誤範例
        IF 1 == 3(
        

        6wrong

    • 判斷式本身不需有空格,下列兩者結果相同
      • 範例 1
        IF 1 == 3 (
        
      • 範例 2
        IF 1==3 (
        

      5CORRECT

  4. 使用正確的邏輯比較運算字

    • 符號僅有 "==" 可以用,詳細內容請看下方
    • 正確範例
      IF 1 NEQ 3 (
      echo "pass"
      ) ELSE (
      echo "fail"
      )
      

      7pass

    • 錯誤範例 1
      IF 1 <> 3 (
      echo "pass"
      ) ELSE (
      echo "fail"
      )
      

      8fail

邏輯比較運算子

operator meaning comment
EQU Equal,== 可以用 ==
NEQ Not equal,<>,!= 不可替換
LSS Less than, < 不可替換
LEQ Less than or Equal,<= 不可替換
GTR Greater than ,> 不可替換
GEQ Greater than or equal, >= 不可替換

心得

經過這次的再釐清,觀念比較清楚,希望下次不會再被問倒XD,

參考資訊

  1. How to run Visual Studio post-build events for debug build only
  2. IF

沒有留言:

張貼留言