我想知道这是否可能。我有一个功能:
pcl::PointCloud<pcl::PointXYZRGB> createPointCloud(std::Vector<Nodes> input)
它返回一个点云。我想知道是否可以获取这个点云,并制作一个指向它的副本的指针。pcl 像这样指向云:
pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloudPTR(new pcl::PointCloud<pcl::PointXYZRGB>)
我试过这样做:
pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloudPTR(createPointCloud(nodeList))
这会导致一个非常明显的错误,即。createPointCloud 不返回指向云的指针。
我也试过这个:
pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloudPTR = &createPointCloud(nodeList)
还有这个:
pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloudPTR(&createPointCloud(nodeList))
这会导致编译错误:“获取临时地址”
是让函数返回指针类型的唯一选择,还是有办法做我要问的?
编辑:
以下两个答案都是正确的,我已经授予 Jonathon 正确的勾号,因为他这次是第一个进入的。