关于pcl 给new出的数据赋值报错问题

pcl::PointCloud::Ptr cloud (new pcl::PointCloud);

  for (size_t i = 0; i < cloud->points.size (); ++i)   //填充数据
  {
    cloud->points[i].x = 1024 * rand () / (RAND_MAX + 1.0f);
    cloud->points[i].y = 1024 * rand () / (RAND_MAX + 1.0f);
    cloud->points[i].z = 1024 * rand () / (RAND_MAX + 1.0f);
  }

上面在运行时报错问题  process has died [pid 18946, exit code -11

主要问题在于需要对cloud进行resize指定

pcl::PointCloud::Ptr cloud (new pcl::PointCloud);

cloud->width  = 5;
  cloud->height = 1;

 cloud->points.resize (cloud->width * cloud->height);

  for (size_t i = 0; i < cloud->points.size (); ++i)   //填充数据
  {
    cloud->points[i].x = 1024 * rand () / (RAND_MAX + 1.0f);
    cloud->points[i].y = 1024 * rand () / (RAND_MAX + 1.0f);
    cloud->points[i].z = 1024 * rand () / (RAND_MAX + 1.0f);
  }

你可能感兴趣的:(自动驾驶)