Может кто-нибудь объяснить, как статические переменные в функциях-членах работают в C++.
Учитывая следующий класс:
class A {
   void foo() {
      static int i;
      i++;
   }
}
Если я объявляю несколько экземпляров A, увеличивает ли вызов foo() в одном экземпляре статическую переменную i во всех экземплярах? Или только тот, который был вызван?
Я предполагал, что у каждого экземпляра будет своя собственная копия i, но пошаговое выполнение некоторого кода, который я имею, указывает на обратное.
