struct X {
int I;
X(int);
X operator+(int);
};
struct Y {
int X;
Y(X);
Y operator+(X);
operator int();
};
extern X operator*(X, Y);
extern int f(X);
X x = 1;
Y y = x;
int i = 2;
int main() {
i+10; y+10; y+10*y;
x+y+i; x*x+i; f(7);
f(y); y+y; 106+y;
}; 修改达个程序,使之能够运行并打印出每个合法表达式的值。