美文网首页
ChaiScript-基本要点

ChaiScript-基本要点

作者: KevinCool | 来源:发表于2016-05-27 11:33 被阅读264次

包含ChaiScript的基本要点

  1. 将ChaiScript添加到现有的VC工程中
    1). 将ChaiScript的include目录添加到工程的包含目录中
    2). 在工程源文件中 #include <chaiscript/chaiscript.hpp>
    3). 实例化ChaiScript引擎
using namespace chaiscript;
ChaiScript chai;
//或者直接
chaiscript::ChaiScript chai;```

2. **ChaiScript脚本与C++互相调用**
  1). **在C++中调用/执行ChaiScript代码**

      - 在C++代码中编写并且执行ChaiScript代码`chai("var scripti = 15");`

   - 是直接调用ChaiScript脚本文件来执行

//helloworld.chai
print("hello chaiscript world")
//控制台程序

include <iostream>

include <chaiscript/chaiscript.hpp>

int main(){
using namespace chaiscript;
ChaiScript chai;
chai.eval_file("helloworld.chai");
return 0;
}```

2).在C++中使用脚本的变量(对象)

//添加一个新的变量
chai("var scripti = 15");
//操作system的变量
//int &表示int引用类型
//操作这个引用就是在操作这个引用所引用的变量。
int &scripti = chai.eval<int &>("scripti");
scripti *= 2;
std::cout << "scripti (updated): " << scripti << std::endl;
chai("print(\"Scripti from chai: \"+to_string(scripti))");```
在C++中操作ChaiScript中变量的方法,使用引用。

  3). **在C++中调用ChaiScript中定义的函数**
与使用变量一样,关联脚本的函数到C++中定义的函数名。

std::function<double()> TestChai = chai.eval<std::function<double()> >("TestChai:)
double d = TestChai();```

4). 在脚本中调用C++函数/d对象
要在脚本中使用C++对象或者使用C++函数要先把函数注册到ChaiScript引擎中。
注册对象的语法:

System system;
chai.add(var(&system),"system");
//注册函数
chai.add(fun(&MyClass::function),"method");```
比如这样,首先是将C++中的变量注册到引擎中:

double value = -2;
double out;
chai.add(chaiscript::var(&value),"value");
chai.add(chaiscript::var(&out),"out");```
下面是将C++的函数注册到引擎中:

double function(int i, double j){
    return i * j;
}
chai.add(chaiscript::fun(&function),"function");
//使用
chai("if (value > 1){
            out = 1/function(2,value)}");```






相关文章

  • ChaiScript-基本要点

    包含ChaiScript的基本要点 将ChaiScript添加到现有的VC工程中1). 将ChaiScript的i...

  • Js基本要点

    第一章1.全局变量就是在任何函数外面声明的或是未声明直接简单使用的,全局对象有个附加属性叫做window,指向该全...

  • linux命令基本要点

  • 公益招贴的基本要点!

    文/刘东霞公益招贴艺术所传达的设计观念、风格及独特的艺术魅力,表明了公益招贴艺术所具有的文化公益性,公益招贴在多元...

  • 基本偏旁书写要点1

    点:轻轻写入,回锋收笔 横:收笔重按,注意角度 竖:上端粗下端细,垂直向下 撇:收笔回钩,微有弧度 捺:注意角度(...

  • 基本偏旁书写要点2

    宀:上面是宝盖的字,底下部分应帽于其下。 皿:下面有底托状的字,其余笔画要托于其上。 阝:以左半部为主的字,左高右...

  • 大纲的几个基本要点

    大纲的几个基本要点,我们一定要记住,只要掌握了这几个要点,写大纲就容易多了 第一,完整的升级体系,这个就不用...

  • Kotlin也没那么难(一)

    do not speak,show my code... 基本概念 函数 要点: kotlin中没有基本数据类型(...

  • 新媒体着陆页制作知识盘点

    在半撇私塾学习着陆页制作这一章,主要的内容有两个: 一个是着陆页的基本要点,一个是制作着陆页的基本框架。 基本要点...

  • 这些专业课答题规范,再不知道就晚啦!

    一、答题基本要求 1、答题要点准确 课本上的理论知识点要点一定要准确,且不能漏掉。千万不能丢掉任何一个答题的要点,...

网友评论

      本文标题:ChaiScript-基本要点

      本文链接:https://www.haomeiwen.com/subject/imoxdttx.html