I have a small quiz:
Here is a small code, compiled with “/clr” (this is important).
Can you tell me, what is the exact callstack inside the method “Foo”?
(And how can you prove this)
struct V
{
V() {}
V(const V &v)
{
this->i = v.i;
}
int i;
};
class C
{
public:
void CallFoo()
{
V v;
Foo(v);
}
virtual void Foo(V v)
{
// TODO: What is the callstack!?
}
};
int main()
{
C c;
c.CallFoo();
}
Any hints can be posted as comments.
By the way: VS208 does not show you the exact callstack, but it gives you a hint, that there is something that you do not see 😉