在PCL中读取数据,需要通过指针进行访问
通过语句:
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_one(new pcl::PointCloud<pcl::PointXYZ>);
此语句是自己在堆区开辟空间,通过指针访问数据。
pcl::PointCloud<pcl::PointXYZ> cloud;
此语句是通过PCL库中的类创建对象,通过对象访问数据
两者之间类型不同:
可以互相转化:
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_one(new pcl::PointCloud<pcl::PointXYZ>);
cloud_one = cloud.makeShared();
这个是对象,转化为指针。
cloud = *cloud_one;
这里是指针转化为对象。
两者之间本质上,都是指针。
参考:
看考文章