none
字串計算問題 RRS feed

  • 問題

  • 字串計算

    給一個字串"2 - 2 + 8 - 4 ="

    算出結果為:4

    我用的是Visual Studio2010,若不用Expression和DataTable,要如何做出來呢?

    2017年4月2日 上午 05:00

解答

  • 動態編譯的概念:

    1. 是把你要計算的字串包裝成一個函數

    2. 然後編譯成一個記憶體中的 DLL (也可以編譯成實體 DLL)

    3. 讓你目前的 .Net 程式執行它

    4. 得到結果

    5. 視情況決定是否需釋放 (ASP.NET 必需釋放,WinForm 一般來說除非專門做程式碼測試的專案需要經常釋放重載)

    Script 控制項的概念:

    呼叫 Windows 內建的 Script 控制項,執行 Javascript / vbscript (同網頁內可執行架構)

    所以只要將打算計算的內容,包裝成 vbscript 或 javascript ,一般而言,vbscript 比較符合直觀計算式,所以這類包裝成 vbscript 即可。

    類似這篇的做法:http://tlcheng.twbbs.org/TLCheng/Basic/vbs/IDE/Runner.htm

    上面網頁因為要動態載入 Script 控制項,可能有安全疑慮,建議抓下來後,自己檢驗原始碼安全無虞後,再授權 IE 可以載入 Script 控制項。


    不精確的問法,就會得到隨便猜的答案;自己都不肯花時間好好描述問題,又何必期望網友會認真回答?

    • 已標示為解答 Shyr 2017年4月9日 上午 04:25
    2017年4月3日 上午 04:45

所有回覆