// author Martin Kjellqvist ITM Mitthögskolan if it works; if not, I have no idea.

#include<iostream>

using namespace std;
// en struct är en klass med public som default.
// för enkelhetens skull
struct C{
	int i;
	C():i(0){ }
	C(int i):i(i){ }

	virtual ~C(){}
};

// f deklarerar ett nytt objekt i argumentlistan
void f(C obj){
  cout<<"C:"<<obj.i;
}
int main(){

	f( 2 );	   // konstruerare C(int ) typomvandlar
	f( C(3) ); // C(3) är ett temporärt objekt.

	return 0;
}