我对C++还比较陌生,所以这可能是一个非常愚蠢的问题。我需要让cube_normals
指针可以被两个成员函数read_models()
和proc_models()
访问,而且每次调用read_models()
时都必须初始化该指针。
在成员函数内部,我可以这样做:
PointCloud<A>::Ptr cube_normals (new PointCloud<A>);
我可以将指针传递给其他函数,但我正在使用12个这样的指针,这可能不是解决此问题的最清晰方式。
这是代码片段。提前感谢!
class preproc
{
public:
preproc();
~preproc();
PointCloud<A>::Ptr cube_normals;
void read_models();
void proc_models();
private:
ros::NodeHandle nh;
ros::NodeHandle nh_priv;
};
read_models()
和proc_models()
是同一类中的方法,因此它们可以直接访问cube_normals
,这是该类的成员变量。它们可以像访问本地变量一样进行访问。您的问题不太清楚。如果您对C++基础知识没有完全理解,最好的答案是继续阅读C++书籍,并理解所呈现的材料。 - Sam VarshavchikPointCloud<A>::Ptr
类型的吗?还是有不同于A
的类型被使用了? - πάντα ῥεῖcube_normals
以指向一个新对象,那么可以使用cube_normals.reset(new PointCloud<A>)
。 - Igor Tandetnikread_models()
时,我需要重新初始化指针。无论如何,我会再次回到书本上的。谢谢! - choureset
可以解决我的问题。应该早点想到。谢谢! - chou