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

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

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

Есть ли ошибка в таком объявлении класса:

  class A  { public:     template <class Type> void f1( Type ) {};     template <class Type> int f2( Type ) {};   };   

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

Варианты ответа
нельзя в одном классе объявить две шаблонные функции
ошибки нет(Верный ответ)
класс следует объявить со словом template
Похожие вопросы

Выберите вариант правильного объявления шаблона класса A:

1.template<class T>class A{public:void f();};template<class T>void A<T>::f(){};2.template<class T>class A{public:void f();};void A<T>::f(){};	

Выберите вариант правильного объявления шаблона класса A:

1.class A<T>{public:	void f();};void A<T>::f(){}; 2.template<class T>class A{public:	void f(){}};template<class T>void A::f(){};	

Выберите правильный вариант программного кода:

1.template<typename T>class A{public:	void f(){}};class A<int>{public:	void f(){}};2.template<typename T>class A{public:	void f(){}};template<> class A<int>{public:	void f(){}};	

Какая строка данного кода производит специализацию шаблона?

template<class Т> class А{int х;};template<class Т> class А<Т*> { long х;};template<template<class U> class V> class C{V<int> y;V<int*> z;};C<A> c;	

Какая ошибка в таком определении шаблона: template <class T, T def_val> class My {};

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

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

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

template<class For> For adjacent_find(For first, For last);template<class For, class BinPred>For adjacent_find(For first, For last, BinPred pred);	
Для чего он предназначен?

Какой будет результат следующего выражения?

    template <class T> class A    { public : T x1; T x2;               T func(T x3)                { x3 += x1 + x2;                  return x3;                }    };    int main()    { A <int> A1;      A1.x1 = 3; A1.x2 = 10;      cout << A1.func(1);    }    

Какой будет результат следующего выражения?

    template <class T> class A    { public : T x1; T x2;               T func(T x3)                { x3 += x1 + x2;                  return x3;                }    };    int main()    { A <int> A1;      A1.x1 = 5; A1.x2 = 12;      cout << A1.func(1);    }    

Какой будет результат следующего выражения?

    template <class T> class A    { public : T x1; T x2;               T func(T x3)                { x3 += x1 + x2;                  return x3;                }    };    int main()    { A <float> A1;      A1.x1 = 5.5; A1.x2 = 0.6;      cout << A1.func(1.1);    }