Should this work?
Code:/* .h */ class cPlayer //declaration { public: float x, y, z; cPlayer(); //constructor }; cPlayer::cPlayer(); //construct void do_something(cPlayer); /* .cpp */ cPlayer player; //instance player.x=10; //assignment main() { do_something(player) //pass } /* other.cpp - includes same .h */ void do_something(cPlayer &player) { player->y=20; //use by reference }