Да, но более распространенной идиомой C ++ для этой ситуации является использование ссылки (и, вероятно, ссылки на const) вместо указателя. Так что вместо
void foo( sometype * p ) {
p->func();
}
Вы пишете:
void foo( sometype & p ) {
p.func();
}
Это имеет то преимущество, что вам не нужно разыменовывать объект в вызывающей стороне:
void afunc() {
sometype t;
foo( t );
}
, а также дает подсознательный намек читателю, что вы не собираетесь использовать эту функцию для владения функцией.