如何计算多个条目的 DLL 平均值

我创建了一个用 C++ 写的 DLL,主要脚本是用 Lua 写的。 在 DLL 中有一个函数:

static int OnQuote(lua_State* L) {
// 接收名为 "last_price" 的参数并尝试计算平均价格
return 0;
}

它接收 5 支在股票交易所上交易的股票的 "last_price"。我想要计算每个股票的最新 100 笔成交的平均 "last_price"。 每个论文都会独立计算自己的平均价格。论文的例子包括:"SBER"、"GAZP"、"ROSN"、"GMKN"、"MGNT"。 最佳做法是什么? 我应该使用哪个容器来存储数据?也许是带有向量的 map? 在哪里声明全局 map?

我在 DllMain 中创建了一个 map,但它在函数 OnQuote 中不可见:

map <string, vector <int> > avr;
avr.insert(pair<string, vector<int> >("SBER", vector<int>{}));
avr.insert(pair<string, vector<int> >("GAZP", vector<int>{}));
avr.insert(pair<string, vector<int> >("GMKN", vector<int>{}));
avr.insert(pair<string, vector<int> >("MGNT", vector<int>{}));
avr.insert(pair<string, vector<int> >("ROSN", vector<int>{}));

我试图在向量中存储中间数据。 请帮我给出解决此任务的策略。

点赞