База ответов ИНТУИТ

Язык программирования C++ для профессионалов

<<- Назад к вопросам

Что будет выведено на экран?

  class A  { public:    A() { x = 1; };               int f() { return x; };    protected: int x;  };  class B  { public:    B() { x = 2; };               int f() { return x; };    protected: int x;  };  class C : public A, public B  {  };   C* c = new C;  cout << c->f();  delete c;  

(Отметьте один правильный вариант ответа.)

Варианты ответа
1
ошибка компиляции(Верный ответ)
2
Похожие вопросы

Объявлены классы:

	class A  	 { public: int a;            A() { a = 0; }; 	 }; 	 class B : public A  	 { public: B():A() {}; }; 	 class C : protected A  	 { public: C():A() {}; }; 	 class D : private A  	 { public: D():A(){}; }; 	 
Созданы объекты и ссылки:
 	B* b = new B;  	C* c = new C;  	D* d = new D; 	 
Какие из следующих операторов приведут к ошибкам компиляции?

Объявлены классы:

  class A   { public: int a;            A() { a = 0; };  };  class B : public A   { public: B():A() {}; };  class C : protected A   { public: C():A() {}; };  class D : private A   { public: D():A(){}; };  Созданы объекты и ссылки:  B* b = new B;  C* c = new C;  D* d = new D;  
Какие из следующих операторов приведут к ошибкам компиляции?

Что будет напечатано в результате работы программы:

  class A   { public: A() { cout << "A "; };            virtual A* new_A() { return new A(); }  };  class B : public A   { public: B(){ cout << "B " ;};            A* new_A() { return new B(); }  };  void fun(A* p1, A* p2)  { A* p3 = p1->new_A();    A* p4 = p2->new_A();  }  void main()  { A* p1 = new A;    B* p2 = new B;    fun(p1,p2);  }    

Что выводит данная программа, если она верна?

#include <iostream.h>class Х{public:virtual void fun(int a = 0){cout << a;}};class Y: public X{public:virtual void fun(int a = 1) {cout << a ; }};int main(){X *px = new X;px->fun();X *py = new Y;py->fun();return 0;}	

Определены классы:

  class base  { int x, y;    public: base() { x = 0; y = 0; }            int getx() { return x; }            int gety() { return y; }  };  class Derived : protected base  { int z;    public: Derived() : base() { z = 0; }            int getz() { return z; }            base::gety;  };  main()  { Derived *obj = new Derived;     /* ??????????? */    }  
Какие из следующих операторов приведут к ошибкам компиляции?

Имеется программный код:

class A{	public :  int a, b;	protected : int z;  	private : short i; } A1;class B : public A{ 	private : int k;  	int func (float d); } B1;
Выберите для него верные определения функции func:
1. int B::func(float d) {   B1.i = b + a;    return b;}  2. int B::func(float d){   k = this.b + a;   return b;}  3. int B::func(float d){   B1.z = this->b + a;   return b;}

Какое отношение между классами реализовано в данном случае?

   class A  {  public: A() { a = 0; };             virtual int f() { return a; }             int a;  };  class B: public A  {  public: B() { a = 1; };     virtual int f() { return a; }  };  

Определены классы:

  class A  { public: void fun() { cout << "функция класса A\n"; }  };  class B: public A  { public: void fun() { cout << "функция класса B\n"; }  };  class C: public B  { public: void fun() { cout << "функция класса C\n"; }  };  
Что будет напечатано в результате выполнения операторов:
      C obj;      obj.A::fun();  

Какой будет результат следующей программы?

class t{     public: t() { s = 4; }    ~t() {};    int s;    int f(int a)    {        s--;        return s * a;     }    class t2    { public : int i; }; };int main(){    t obj_t;    t::t2 obj_t2;    obj_t2.i = 10;    cout << (obj_t.f(2) + obj_t2.i) << endl;}

Какой будет результат следующей программы?

  class t  { public: t() { s = 2; }            ~t() {};            int s;            int f(int a)             { s++;               return s * a;             }            class t2            { public : int i; };  };	main()	{ t obj_t;    t::t2 obj_t2;    obj_t2.i = 5;		cout <<	(obj_t.f(2) + obj_t2.i) << endl;	}