Explore topic-wise InterviewSolutions in .

This section includes InterviewSolutions, each offering curated multiple-choice questions to sharpen your knowledge and support exam preparation. Choose a topic below to get started.

1.

#include <iostream>using namespace std;template <typename T>T max(T x, T y){return (x > y)? x : y;}int main(){cout << max(3, 7) << std::endl;cout << max(3.0, 7.0) << std::endl;cout << max(3, 7.0) << std::endl;return 0;}(A)77.07.0(B) Compiler Error in all cout statements as data type is not specified.(C) Compiler Error in last cout statement as call to max is ambiguous.(D) None of the above

Answer»
2.

Predict the output?#include <iostream>using namespace std;template <typename T>void fun(const T&x){static int count = 0;cout << "x = " << x << " count = " << count << endl;++count;return;}int main(){fun<int> (1);cout << endl;fun<int>(1);cout << endl;fun<double>(1.1);cout << endl;return 0;}(A)x = 1 count = 0x = 1 count = 1x = 1.1 count = 0(B)x = 1 count = 0x = 1 count = 0x = 1.1 count = 0(C)x = 1 count = 0x = 1 count = 1x = 1.1 count = 2(D) Compiler Error

Answer»
3.

Output of following program?#include <iostream>using namespace std;template <class T>class Test{private:T val;public:static int count;Test() { count++; }};template<class T>int Test<T>::count = 0;int main(){Test<int> a;Test<int> b;Test<double> c;cout << Test<int>::count << endl;cout << Test<double>::count << endl;return 0;}(A)00(B)11(C)21(D)10

Answer»
4.

Output of following program? Assume that the size of char is 1 byte and size of int is 4 bytes, and there is no alignment done by the compiler.#include<iostream>#include<stdlib.h>using namespace std;template<class T, class U>class A {T x;U y;static int count;};int main() {A<char, char> a;A<int, int> b;cout << sizeof(a) << endl;cout << sizeof(b) << endl;return 0;}(A)612(B)28(C) Compiler Error: There can not be more than one template arguments.(D)88

Answer»
5.

Output of following program? Assume that the size of int is 4 bytes and size of double is 8 bytes, and there is no alignment done by the compiler.#include<iostream>#include<stdlib.h>using namespace std;template<class T, class U, class V=double>class A {T x;U y;V z;static int count;};int main(){A<int, int> a;A<double, double> b;cout << sizeof(a) << endl;cout << sizeof(b) << endl;return 0;}(A)1624(B)816(C)2028(D) Compiler Error: template parameters cannot have default values.

Answer»
6.

Output of following program.#include <iostream>using namespace std;template <class T, int max>int arrMin(T arr[], int n){int m = max;for (int i = 0; i < n; i++)if (arr[i] < m)m = arr[i];return m;}int main(){int arr1[] = {10, 20, 15, 12};int n1 = sizeof(arr1)/sizeof(arr1[0]);char arr2[] = {1, 2, 3};int n2 = sizeof(arr2)/sizeof(arr2[0]);cout << arrMin<int, 10000>(arr1, n1) << endl;cout << arrMin<char, 256>(arr2, n2);return 0;}(A) Compiler error, template argument must be a data type.(B)101(C)10000256(D)11

Answer» None
7.

Output?#include <iostream>using namespace std;template <class T>T max (T &a, T &b){return (a > b)? a : b;}template <>int max <int> (int &a, int &b){cout << "Called ";return (a > b)? a : b;}int main (){int a = 10, b = 20;cout << max <int> (a, b);}(A) 20(B) Called 20(C) Compiler Error

Answer»
8.

Output?#include <iostream>using namespace std;template<int n> struct funStruct{static const int val = 2*funStruct<n-1>::val;};template<> struct funStruct<0>{static const int val = 1 ;};int main(){cout << funStruct<10>::val << endl;return 0;}(A) Compiler Error(B) 1024(C) 2(D) 1

Answer»
9.

Output?#include <iostream>using namespace std;template <int i>void fun(){i = 20;cout << i;}int main(){fun<10>();return 0;}(A) 10(B) 20(C) Compiler Error

Answer»