Auch kann der Typ bei Übergabe geändert werden von Pointer nach Objekt oder von Objekt nach Pointer:
f(pa); // Pointerübergabe
void f(int* a)
{
cout << * a;
}
void g(int a)
{
cout << a;
}
int a = 3, b = 4;
int* pa = &a;
f(&b); // Adresse eines int übergeben
g(a); // int übergeben
g(*pa); // Pointer erst dereferenzieren