c++ - Qt 与 Lua | lua文件放在哪里

标签 c++ qt lua qt-creator

我创建了一个 cpp 文件,其中的主要方法实现了对 lua 的调用。 编译 + 执行 qt 项目时,我收到以下错误:

PANIC: unprotected error in call to Lua API (attempt to call a string value)

问题是lua找不到要执行的lua文件(至少我是这么认为的)。所以我将文件复制到所有调试目录和主目录,但它仍然不起作用。

谢谢你帮助我!


main.cpp

#include <stdio.h>

extern "C" {
    #include "lua.h"
    #include "lualib.h"
    #include "lauxlib.h"
}

lua_State* L;

int main(int argc, char *argv[])
{


    /* initialize Lua */
    L = luaL_newstate();

    /* load Lua base libraries */
    luaL_openlibs(L);

    /* load the script */
    luaL_loadfile(L, "test.lua");

    lua_call(L, 0, 0);

    /* cleanup Lua */
    lua_close(L);

}

和文件test.lua

-- test

print("Hello World")

最佳答案

鉴于这是一个运行时文件操作,该函数可能只在当前目录中查找。

关于c++ - Qt 与 Lua | lua文件放在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41667309/

相关文章:

c++ - 如何以编程方式确定程序是否在用户的 PATH 中

c++ - C++ 中的指针和引用作为参数

qt - Qt 控制台应用程序的信号和插槽?

c++ - 游戏开发 : how should I manage the AI using lua scripts?

c - 我在 C++ 中使用 widestring 时程序崩溃

c++ - 在不停止程序的情况下调试程序

c++ - Eclipse - C++ hello world 项目的错误

c++ - 隐藏 qtablewidget 和颜色列中的行数

python - 如何切换到外部应用程序?

math - 设置二维向量的大小