Templates

6. Which of the following is the correct syntax for a template class in C++?
  • A. template <T> class MyClass {}
  • B. template class <T> MyClass {}
  • C. template <class T> class MyClass {}
  • D. class template <T> MyClass {}

template <class T> class MyClass {}

template <class T> class MyClass {}

7.What will happen if you attempt to instantiate a template with a type that is not supported by the template function?
  • A. Compilation error
  • B. The compiler automatically chooses the best matching type
  • C. The program will crash at runtime
  • D. The type is ignored

Compilation error

Compilation error

8.Which of the following is a valid specialization of a template class?
  • A. template <> class MyClass<int> {}
  • B. template <T> class MyClass<T>::specialization {}
  • C. template <class T> MyClass<int> {}
  • D. template <T> class MyClass {}

template <> class MyClass<int> {}

template <> class MyClass<int> {}

9.Can a template function have default arguments?
  • A. Yes
  • B. No
  • C. Only for class templates
  • D. Only for non-primitive types

Yes

Yes

10.What is the advantage of using templates in C++?
  • A. Code reusability and type safety
  • B. Faster execution
  • C. Less memory usage
  • D. Easier debugging

Code reusability and type safety

Code reusability and type safety