关于C++中实例对象调用静态函数的问题

class VAC

public: 
 int f() const{return 3;}  
int f(){return 5;} 
}; 
int main() { 
 VAC v1; 
 const VAC v2; 
 cout<<v1.f()<<v2.f();  return 0; 
}
输出结果为53,求解释

一个5一个3呗,但是好像有歧义的

分别调用的不同的函数,根据实例类型,调用两个不同的f()。输出结果就是5 3了。