C++ | Static Keyword | Question 5

filter_none

edit
close

play_arrow

link
brightness_4
code

#include<iostream>
using namespace std;
  
class Test
{
private:
    static int count;
public:
    Test& fun(); 
};
  
int Test::count = 0;
  
Test& Test::fun()
{
    Test::count++;
    cout << Test::count << " ";
    return *this;
}
  
int main()
{
    Test t;
    t.fun().fun().fun().fun();
    return 0;
}

chevron_right


(A) Compiler Error
(B) 4 4 4 4
(C) 1 1 1 1
(D) 1 2 3 4


Answer: (D)

Explanation: Static members are accessible in non-static functions, so no problem with accessing count in fun().

Also, note that fun() returns the same object by reference.

Quiz of this Question



My Personal Notes arrow_drop_up