E' quasi giusto. In pratica B eredita i metodi di A in qualsiasi caso (anche senza public), ma, se usi public, puoi usare i metodi di A dentro il corpo di quelli di B. Ad esempioA naso oserei dire che la classe B "eredita" tutta la parte pubblica di A ma non ne sono troppo sicuro.
Omettendo public, in pratica, la riga (*) ti darebbe un errore di compilazione.codice:class A { public: A(); int Metodo_di_A(); }; class B: public A { public: B(); int Metodo_di_B() { int x = Metodo_di_A(); //(*) return sqrt(x + 1); //ad esempio... } };
cout <<<< endl;