第一印象
範例程式
截圖
與其它函式庫比較
相關應用
下載
教學文件
作品展示(Bazaar)
現狀及發展藍圖
常見問題(FAQ)
作者與授權
論壇
資助Ultimate++
搜尋本網站
語言
中文(繁體)











SourceForge.net Logo



EscApp

 

Using Esc scripting language in U++ application

 

 

EscApp.cpp

 

#include <Esc/Esc.h>

 

using namespace Upp;

 

void SIC_Print(EscEscape& e)

{

    if(e[0].IsArray())

        Cout() << (String) e[0];

    else

    if(e[0].IsNumber())

        Cout() << e[0].GetNumber();

    else

    if(!e[0].IsVoid())

        e.ThrowError("invalid argument to 'Print'");

}

 

void SIC_Input(EscEscape& e)

{

    e = ReadStdIn();

}

 

void SIC_InputNumber(EscEscape& e)

{

    e = atof(ReadStdIn());

}

 

CONSOLE_APP_MAIN

{

    ArrayMap<String, EscValue> global;

    Escape(global, "Print(x)", SIC_Print);

    Escape(global, "Input()", SIC_Input);

    Escape(global, "InputNumber()", SIC_InputNumber);

    StdLib(global);

    try {

        Scan(global, LoadFile(GetDataFile("script.esc")));

        Execute(global, "main", INT_MAX);

    }

    catch(CParser::Error e) {

        Cout() << "ERROR: " << e << "\n";

    }

}

 

 

 

 

本頁也正在english, català, čeština, deutsch, español, euskara, français, română, русский中文(简体)中. 你想幫忙嗎?