Skip to content
Related Articles

Related Articles

Improve Article

C++ | Templates | Question 10

  • Last Updated : 28 Jun, 2021
Geek Week

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

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

Quiz of this Question

Take a step-up from those “Hello World” programs. Learn to implement data structures like Heap, Stacks, Linked List and many more! Check out our Data Structures in C course to start learning today.
My Personal Notes arrow_drop_up
Recommended Articles
Page :