S
ssailor
I saw an exaple in the c++ standard(clause 6.8),
-------------------------------------------------------
struct T1 {
T1 operator ()( int x ) { return T1(x ); }
int operator =( int x ) { return x; }
T1(int ) { }
};
struct T2 { T2(int ){ } };
int a , (*(* b)( T2 ))( int ), c , d;
void ff ()
{
T1(a) = 3 ,
(*(* b)( T2(c )))( int(d )); // AA
}
-------------------------------------------------------
struct T1 {
T1 operator ()( int x ) { return T1(x ); }
int operator =( int x ) { return x; }
T1(int ) { }
};
struct T2 { T2(int ){ } };
int a , (*(* b)( T2 ))( int ), c , d;
void ff ()
{
T1(a) = 3 ,
(*(* b)( T2(c )))( int(d )); // AA
}