Skip to content
Related Articles

Related Articles

C++ | Templates | Question 10
  • Last Updated : 16 Oct, 2013


#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: (B)

Explanation: This is an example of template metaprogramming. The program mainly calculates 2^10.

Quiz of this Question

Attention reader! Don’t stop learning now. Get hold of all the important C++ Foundation and STL concepts with the C++ Foundation and STL courses at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up
Recommended Articles
Page :