[ChaiScript]一个C++友好的嵌入式脚本语言

📓 ChaiScript 简介

🍵 官网: chaiscript.com

🐉 Github

关键词: script C++14 header-only

ChaiScript是一个直接以C++为目标从底层设计的嵌入式脚本语言,利用现代C++开发技术,按着开发人员的想法来工作。作为一个原生的C++应用程序,它比现有的嵌入式脚本语言有一些优势。

  • Header-Only
  • 类型安全
  • 支持各种C++技术,包括回调、重载函数、类方法和STL容器。

[译改自Github]

ChaiScript是一个对 C++十分友善的脚本语言,可以比较方便的访问(已注册的)C++资源,反之亦然。

🎍 ​安装

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
vcpkg install chaiscript

也可单独下载仓库的include部分使用。

  • Visual Studio中,可以将ChaiScript的include目录添加到项目属性的附加包含目录中。

  • 设置C++的标准为C++14(推荐)或更高。

  • 编译文件时,可能会因引用模板较多而造成obj文件过大导致无法编译的情况,请在C++属性命令行中添加 /bigobj 标志,

    error C1128: 节数超过对象文件格式限制: 请使用 /bigobj 进行编译

🔔 Hello, ChaiScript!

#include <chaiscript/chaiscript.hpp>

int main()
{
	chaiscript::ChaiScript chai;
	chai(R"(print("Hello, ChaiScript!");)");
	return 0;
}

控制台可见如下内容

Hello, ChaiScript!

chaiscript::ChaiScript引擎类,是库中最重要的类之一,使用 eval 可以执行ChaiScript指令,类重载了operator ()来执行eval

print是ChaiScript内置的输出方法,原型为void print(Object o)。关于其他内置方法请查看此页

posted @ 2020-11-12 23:34  thatboy  阅读(2006)  评论(0编辑  收藏  举报