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

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

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

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

#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;}	

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

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

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

  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);  }    

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

  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 A { public: void f() { cout << 1; } };class B : public A{ public: void f() { cout << 2; } };	
то что будет напечатано? B b; A& a=b; a.f();

Если записано

	class A { public: void f() { cout << 1; } };	class B : public A	{ public: void f() { cout << 2; } };	
то что будет напечатано? B b; b.f();

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

  class window   { virtual void move();  };  class figure   { virtual void move();  };  class cwindow : public window  { virtual int wmove(int) = 0;    void move() { wmove(); }  };  class cfigure   { virtual int fmove(int) = 0;    void move() { fmove(); }  };  class wind_fig : public cwindow, public cfigure  { void wmove();    void fmove();  };  
К какому виду относится класс wind_fig?

Определите результат работы данной программы для A a; B b; b.f();

	class A { public: void f() { cout << 5; } };	class B : public A	{ public: void f() { cout << 6; } };	

Что будет выведено на экран в результате выполнения приведенной ниже программы:

	#include "iostream.h"#include "conio.h"class NewClass{  int x;  int y;  public:  NewClass(int x0,int y0)  {    x=x0;    y=y0;  }  void DISPLAY(void)  {    cout<<x<<" "<<y;  }  NewClass operator+(NewClass obj)  {    NewClass tmp(0,0);    tmp.x=x+obj.x;    tmp.y=y+obj.y;    return tmp;  }};int main(){  NewClass obj1(1,3),obj2(5,8);  obj1=obj1+obj2;  obj1.DISPLAY();  getch();  return 0;}	

К какому виду относится класс, объявленный так:

  class dim   { public: virtual void add(X*) = 0;            virtual void sub(X*) = 0;            virtual int sum() = 0;            virtual ~dim(){};  }    

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

   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  { void fun() { cout << "функция класса A\n"; }  };  class B : private A  { public: void fun() { cout << "функция класса B\n";}  };  class C : private B  { public: void fun() { cout << "функция класса C\n";}  };  
Что будет напечатано в результате выполнения операторов:
      C *obj;      obj = new C;      obj->fun();