Initialisation statique d'objet avec constructeur
Bonjour,
je cherche à créer un tableau d'objets initialisés statiquement lors de la déclaration.
Et je tombe sur un comportement que je ne m'explique pas !
Voici un exemple minimal qui met en évidence ce comportement :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <stdio.h>
struct Pair
{
Pair ( int x = 0 , int y = 0 ) { _x = x ; _y = y ;}
int _x,_y ;
} ;
void main ()
{
Pair p [2] = { (1,2),(3,4) } ;
printf("(%d,%d) (%d,%d)\n",p[0]._x,p[0]._y,p[1]._x,p[1]._y ) ;
} |
Sur la console j'obtiens :Alors là...
Quelqu'un pourraît-il m'expliquer ce phénomène ?
Pourquoi sont-ce les secondes valeurs d'initialisation que je retrouve dans les premiers champs de mon objet ?
Merci d'avance.