Является ли `X x = x = X();` допустимым в C++?

Я сократил это:

struct A
{
   int * x;
   A() : x( x = new int() )
   {
   }
};

до следующего:

int m = m = 3;
//or
struct X;
//...
X x = x = X();

Мне кажется законным. Я не понимаю, почему вы хотите это сделать, но законно ли это? Есть ли случаи, когда вы хотели бы сделать это (не случай int, я понимаю, что это совершенно бесполезно)?

7
задан Ben 26 March 2012 в 08:48
поделиться