C++结构/矢量编译问题
C++ Structure/Vector Compile Issues
我正在努力修复以下编译错误:
错误C3867:"std::vector>:at":函数调用缺少参数列表;使用'&std::vector>::at'创建指向成员的指针
我的代码是:
struct coord_type {
int x;
int y;
};
struct elements_type {
vector <coord_type> my_coord;
coord_type item2;
coord_type item3;
};
错误的函数是:
void position_time(data_type data)
{
int i;
coord_type position;
for (i = data.elements.my_coord.size() - 1; i > 0; i--) {
position = data.elements.my_coord.at[i];
}
}
知道怎么解决这个问题吗?
at
是一个函数,它将所需数据的索引作为参数。您有两个选项:
- 将
[i]
更改为(i)
(因为它是一个函数) - 使用传统数组表示法(
data.elements.my_coord[i]
)访问索引
如果你想遍历向量,最好使用迭代器,这里使用反向迭代器更好。
void position_time(data_type data)
{
coord_type position;
for_each(data.elements.my_corrd.rbegin(), data.elements.my_corrd.rend(), [&](coord_type& ct){position = ct;});
}
相关文章:
- Rextester 语言编译C++问题
- C++ 多级虚拟继承编译问题
- 编译问题:在函数"_start"中:未定义对"主"的引用 collect2:错误:ld 返回 1 个退出状态
- 使用 CImg 库的 std::min 和 std::max 的编译问题
- Qt Visual Studio 2015 加载项编译问题
- libssh 问题编译问题未定义的错误
- 在 armhf 上使用 cmake 在 qt 上的编译问题 "Syntax error: wird unexpected (expecting " ) " "
- LLVM 万花筒教程 JIT 编译问题
- PX 转换例程编译问题
- 模板类编译问题与 typedef 变量
- 在 Ubuntu 16.04 LTS 上使用 c++ 编译问题?
- 编译问题与 Ubuntu Linux
- C++编译问题错误 - C2332:<类:缺少标记名称>
- AIX C++映射编译问题
- Ubuntu 下的 Cmake 和 Intel IPP 的编译问题
- 如何解决我在 Ubuntu 19.04 下使用 GLFW 时遇到的这个编译问题?
- wxWebView在Ubuntu上的编译问题
- C++constexpr编译问题
- CMake - OpenVR 编译问题
- C++ SD 总线源文件编译问题