Что произойдет если приведенный ниже код попытаться откомпилировать и запустить на выполнение? #include
class Base{
private:
int n;
public:
Base(){ n=4; }
Base(int n){ this->n = n; }
int getValue(){ return this->n; }
void ProcessValue(){ makeDoubleAction(); }
protected:
virtual void makeDoubleAction(){ this->n*=2; }
};
class Derived:public Base{
public:
Derived(int m):Base(m){}
};
int main(){
Base A;
Derived B(3);
A.ProcessValue();
B.ProcessValue();
printf("Result: %i %i\n", A.getValue(), B.getValue());
return 0;
}
Ответы:
1. Result: 4 6 2. Result: 8 6 3. Result: 4 12 4. Result: 4 16 5. Синтаксическая ошибка, связанная с недоступностью конструктора. 6. Синтаксическая ошибка, связанная с недоступностью метода. 7. Синтаксическая ошибка, связанная с недоступностью поля.

  • a. 1
  • b. 2
  • c. 3
  • d. 4
  • e. 5
  • f. 6
  • g. 7
Для просмотра статистики ответов нужно войти.