Конечно, ты. Отличие наследования в том, что если вы определите класс, он будет наследовать private от других классов / структур. Если вы определяете структуру и наследуете ее от класса или структуры, по умолчанию это будет публичное наследование:
// the following two are equivalent except that one time class is
// used and the other time struct
struct f : g { };
class f : public g { };
Если вам интересно, как вы должны обернуть структуры C - я бы включил их в класс в качестве члена. Поскольку структуры C не были предназначены для наследования (подумайте ни о защищенном, ни о виртуальном деструкторе в структурах C - они не могут иметь такой объект). Это простые агрегаты, которые собирают данные. И размещение их в качестве членов использует их как таковые (например, в «точке есть пара координат x и y»).
C-структуры также выставляют членов, которые, возможно, не должны быть выставлены в классе. Сдерживание позволяет точно контролировать то, что раскрывается, а что нет, с помощью функций get / set, и вы все равно можете позволить ему дать вам копию или ссылку на содержащийся голый объект структуры C.