Bonjour,

J'ai encore un souci pour faire des constructeurs multiple, où un constructeur avec moins de paramètre appel un autre avec plus de paramètres ...

Voici ce que donne mon code (vous voyez l'erreur ?!) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
DigitalPin::DigitalPin(Device & device, PinNumber pin, PinMode mode = MODE_OUTPUT, PinLevel defaultlevel = LEVEL_LOW) :
_device(device), _pin(pin), _mode(mode), _level(defaultlevel)
{
 
  PinMode changedMode = _device.digitalPinMode(_pin, _mode);
  if (changedMode != MODE_ERROR) {
 
    write(_level);
  } 
  else {
 
    _mode = MODE_UNDEFINED;
    _level = LEVEL_UNDEFINED;
  }
}
 
DigitalPin::DigitalPin(Device & device, PinNumber pin, PinMode mode) : DigitalPin(device, pin, mode, LEVEL_LOW)
{
  //DigitalPin(device, pin, mode, LEVEL_LOW);
}
 
DigitalPin::DigitalPin(Device & device, PinNumber pin) : DigitalPin(device, pin, MODE_OUTPUT)
{
  //DigitalPin(device, pin, MODE_OUTPUT);
}
et comme erreur j'ai :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
DigitalPin.cpp: In constructor 'DigitalPin::DigitalPin(Device&, PinNumber, PinMode)':
DigitalPin.cpp:20: error: type 'DigitalPin' is not a direct base of 'DigitalPin'
DigitalPin.cpp:20: error: uninitialized reference member 'DigitalPin::_device'
DigitalPin.cpp: In constructor 'DigitalPin::DigitalPin(Device&, PinNumber)':
DigitalPin.cpp:25: error: type 'DigitalPin' is not a direct base of 'DigitalPin'
DigitalPin.cpp:25: error: uninitialized reference member 'DigitalPin::_device'