#include <iostream>
struct card
{
int face;
int shape;
int color;
//overload operator
friend std::ostream& operator<<(std::ostream &os, const card& obj);
};
std::ostream& operator<<(std::ostream &os, const card& obj)
{
os << obj.face << " " << obj.shape << " " << obj.color;
return os;
}
int main()
{
card deck[52] = {};
deck[1].face=1;
deck[1].shape=1;
deck[1].color=1;
std::cout<<deck[1].face <<" "<<deck[1].shape <<" "<<deck[1].color<<std::endl;
//use overloaded operator<<
std::cout << deck[1]<<std::endl;
return 0;
}