no member named 'push_back' in 'LidarPointCloudNew' outputfusioncloud.push_back(std::move(fusioncloud));
时间: 2024-10-16 11:19:39 浏览: 17
member_function_const_volatile.rar_The Class
在C++中,`push_back` 是 `std::vector` 类的成员函数,用于在向量的末尾添加一个元素。如果你遇到错误信息“no member named 'push_back' in 'LidarPointCloudNew'”,这通常意味着你试图对一个不是 `std::vector` 类型的对象调用 `push_back` 方法。
从你的代码片段来看,`outputfusioncloud` 的类型可能是 `LidarPointCloudNew`,而不是 `std::vector`。因此,你需要确保 `outputfusioncloud` 是一个 `std::vector` 类型的实例,或者 `LidarPointCloudNew` 类中有一个名为 `push_back` 的成员函数。
以下是一些可能的解决方案:
1. 确保 `outputfusioncloud` 是 `std::vector` 类型:
```cpp
std::vector<LidarPointCloudNew> outputfusioncloud;
outputfusioncloud.push_back(std::move(fusioncloud));
```
2. 如果 `LidarPointCloudNew` 类应该包含 `push_back` 方法,确保你在类定义中实现了该方法:
```cpp
class LidarPointCloudNew {
public:
// 其他成员函数和变量
void push_back(const LidarPointCloudNew& value);
};
```
3. 检查是否包含了正确的头文件(例如 `<vector>`)并使用了正确的命名空间:
```cpp
#include <vector>
```
4. 确认 `fusioncloud` 的类型与 `outputfusioncloud` 的元素类型匹配。
阅读全文