C++ - Какой будет результат работы программы? | ProgHub
Какой будет результат работы программы?
#include <iostream> 
using std::cout; 
 
struct Base { 
   static int num; 
   static const int val=2; 
 
   static void foo() { 
       static int num2=++test();        // 1 
       cout << num2; 
       test() += val;                   // 2 
   } 
   static int& test() { 
       return num; 
   } 
}; 
int Base::num; 
int main() 
{     
   for (int i = 0;i < Base::val;i++) { 
       Base::foo(); 
   } 
   cout << Base::num; 
 
       return 0; 
}
ошибка в строке 1
ошибка в строке 2
145
ошибка компиляции
115