A.void fFriend(T &objT,int k){objT.i=k;} B.void fFriend(T &objT,int k){k=objT.i;} C.void T::fFriend(T &objT,int k){k+=objT.i;} D.void fFriend(T &objT,int k){objT.i+=k;}
A.void W::fConst(int&k)const{k=a;} B.void W::fConst(int&k)const{k=a++;} C.void W::fConst(int&k)const{cin>>a;} D.void W::fConst(int&k)const{a=k;}
A.void Z::fStatic(){obj Z.a=1;} B.void Z::fStatic(){a=1;} C.void Z::fStatic(){this->a=0;} D.void Z::fStatic(){Z::a=0;}