小编blu*_*rnd的帖子

Lua,C++,任何比lua_open()更深入的好介绍?

我现在搜索了很多内容,但我发现的所有内容都是使用C++的Lua的"Hello World"示例.

情况:游戏,大型游戏.有一个游戏控制台,目前用C++(面向对象和所有)硬编码,有很多if-else-if-else ...块来检查用户在控制台中输入的命令.每个命令可以改变其他类的游戏的部件(像命令"速度5"改变可变double speedclass Car通过调用Car::setSpeed(5)),并且还给出了一个输出回到约结果控制台.还有一些命令可以在"幕后"执行,而不仅仅是更改变量,这也应该由Lua完成,并且只有最终结果传回C++代码(控制台输出+正确类中的变更变量).

在哪里/如何/我应该开始将此控制台命令功能后面的代码转换为Lua?像这样:用户在控制台中输入"speed 5",然后Lua调用Car::setSpeed(5),然后Lua报告回C++控制台.而不是硬编码命令背后的代码,而应该用Lua编写,但游戏的其余部分应该保留在C++中(就像我的类和成员以及控制台框架一样).

有什么好的教程吗?任何提示从哪里开始?分享一些经验?

提前致谢

c++ lua

5
推荐指数
1
解决办法
715
查看次数

netbeans,git,拒绝hostKey?

我目前正试图让Netbeans使用Git插件.如果我想从Netbeans中克隆我的git存储库,我会收到错误消息: reject hostKey: [repository url] 克隆中止.

这是什么意思,我该如何解决?

git ssh netbeans clone

5
推荐指数
1
解决办法
4608
查看次数

Eclipse,cmake,Windows,MingW - Makefile生成器是什么?

如果我选择"Eclipse MingW Makefile"或"Eclipse Unix Makefile",那么在使用cmake和eclipse以及MingW的Windows上会有什么不同?

使用MingW,我总是会遇到"sh.exe"的错误(如果我重新点击"Configure"就会消失),使用Unix,我总是需要手动指定windres,因为cmake无法找到它.

这对Eclipse或其他东西有什么影响吗?

两个生成的Makefile都与Eclipse和MingW一起工作并编译我的项目.

我应该选择什么Makefile?为什么?

eclipse windows mingw makefile cmake

5
推荐指数
1
解决办法
5735
查看次数

Eclipse CDT - 在派生类中显示继承的成员?

在Eclipse CDT中,大纲甚至代码窗口是否可以显示类的继承成员?这样我就可以全面了解派生类的功能.

class Derived : public Base {}
Run Code Online (Sandbox Code Playgroud)

如果我在Derived.cpp/h中,我想在大纲中看到Base.cpp/h中的继承成员(或者在其他地方,可能直接在代码窗口中显示为灰色).

将它放在自动完成列表中是很好的,但是还有一个完整的概述会更好.

这有点可能吗?

eclipse class eclipse-cdt base show

5
推荐指数
1
解决办法
609
查看次数

c ++,在Windows上列出所有文件,dirent.h

在C++中,列出Windows上所有目录文件的最佳方法是什么?

在Linux或Windows上使用gcc(例如MingW),使用dirent.h很容易,但是当dirent.h不可用时(例如Visual Studio),在Windows上执行此操作的最佳方法是什么?

我是否应该强制人们向他们的Visual Studio添加一个免费的dirent.h实现?或者我应该写一个替代代码来读取文件?如果这样,那么最好的代码是什么?

谢谢.

c++ windows file list dirent.h

4
推荐指数
2
解决办法
5615
查看次数

主要的多个定义

如何在C++程序中正确实现Lua?我下载的Lua源,把我的src文件夹中的.c文件和.h文件在我的包含文件夹,包含在我的程序的源代码lua.h(用EXTERN当然"C" {}),并点击"Build" .

这就是所有教程告诉我将Lua与C++项目一起使用的方法.

但现在我得到错误"main的多重定义"和Lua代码中的一些无法解析的符号.我理解第一个错误意味着什么(冲突因为Lua有一个主要而我的程序也有一个),但我怎么解决呢?

或者我是否理解在C++程序中实现Lua的完全错误?

c++ lua program-entry-point definition

4
推荐指数
1
解决办法
1818
查看次数

c ++,MingW,对`libiconv'的未定义引用

我在MingW遇到这些错误:

undefined reference to `libiconv_close'
undefined reference to `libiconv_open'
undefined reference to `libiconv'
Run Code Online (Sandbox Code Playgroud)

我安装了MingW的libiconv软件包.是什么造成的?如果这具有一定的重要性,我正在尝试使用tinygettext.

c++ mingw libiconv

3
推荐指数
1
解决办法
2243
查看次数

C++,将角度加入指定范围的最快方法?

将变量放入给定范围的最快方法是什么?例如,确保角度"double alpha"始终在(0.0,2*Pi)内.

我自己找到了两个解决方案,其中一个解决方案速度慢得多,而另一个解决方案看起来很容易复杂.必须有更好的方式,不是吗?

//short, but very slow (so it's a no-go);
return asin(sin(alpha));

//much faster, but seems ugly (two while loops to change a variable? come on!)
while (alpha < 0.0)
{
    alpha += 2.0 * M_PI;
}
while (alpha >= 2.0 * M_PI)
{
    alpha -= 2.0 * M_PI;
}
return alpha;
Run Code Online (Sandbox Code Playgroud)

c++

1
推荐指数
1
解决办法
247
查看次数

#define与const声明的优先级

可以#define"覆盖"一个const变量,反之亦然?或者它会导致编译器错误?

//ONE
#define FOO 23
const int FOO = 42;

//TWO
const int FOO = 42;
#define FOO 23
Run Code Online (Sandbox Code Playgroud)

FOO在两种情况下都有什么价值,42或23?

c++ variables const overwrite c-preprocessor

0
推荐指数
1
解决办法
409
查看次数