Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将Lua表转换为C++;_C++_Lua - Fatal编程技术网

C++ 将Lua表转换为C++;

C++ 将Lua表转换为C++;,c++,lua,C++,Lua,我有一张这样的Lua表: t_big={ {open,high,low,close, sd, far_sd}, {open,high,low,close, sd, far_sd}, {open,high,low,close, sd, far_sd}, {open,high,low,close, sd, far_sd}, }--many lines like these. Open, high, low, close, sd, far_sd are different numbers. 我把这个

我有一张这样的Lua表:

t_big={
{open,high,low,close, sd, far_sd},
{open,high,low,close, sd, far_sd},
{open,high,low,close, sd, far_sd},
{open,high,low,close, sd, far_sd},
}--many lines like these. Open, high, low, close, sd, far_sd are different numbers.
我把这个代码翻译成C++。帮我找到类似的容器(字典)。它必须支持非常高的速度,因为我将使用蛮力学习这些数据。Lua脚本的工作时间为1周。我学习C++更快地完成这项工作。 Lua蛮力圈看起来像:

for sd=start_sd,end_sd,1 do 
 for far_sd=start_far_sd,end_far_sd,0.25 do 
 ..... work with container, check sd and far_sd parameters. Seeking best result.
 end 
end

实际上,你问什么还不太清楚。根据现有信息,我提出了一些想法:

  • 经典数组或
    std::array
    。一般的缺点是,它们的大小是在编译时(源文件)中定义的,这可能是个坏主意。将条目存储为
    struct
    ,以便于字段命名
  • std::vector
    。和前一个一样,但它是运行时大小的。以相同的方式存储条目
  • 从你的“蛮力”的例子中,很明显你做得不对。看看任何类型的SQL数据库:SQLite可能是目前最好的选择。这需要一些学习,但总体来说应该很容易。如果您的表是硬编码的(我很确定不是,但谁知道呢),您可以找到lua的SQLite绑定并轻松导出它。若并没有,你们总是可以在内存中创建超高速的数据库(无论如何不要忘记索引表!)。为了让事情变得更简单,您可能需要为SQLite使用一些包装器,如

  • 如果语言本身并不重要(你只到速度来C++),考虑使用LULA的SQLite绑定,它应该比你现在更容易,比你现在所做的BuurTist逼人表要快得多。

    FWIW,它不是语言的快,而是你如何使用它。你也可以用C++做得相当慢。暴力通常是最糟糕的方法,所以不管你选择哪种语言,它都会很慢。也就是说,您确实需要添加更多关于如何访问此信息的详细信息,以便我们可以帮助您选择合适的容器。添加了对@NathanOliver的postAgreeing的回答,“并行数组”是一种适用于两种语言的技术。(在Lua中,它们将是带有序列的表。Lua的潜在优势是避免每“行”有一个表。)@Kosmonavt:“帮助我找到类似的容器(字典)”在代码中所做的任何事情都不构成“字典”;所有这些表,包括包含的表,都只是数组。