Funktion Overload
hab ein kleines problem mit dem Überladen.
folgende funktionen existiern:
bei write_data(0,0); sagt der compiler: error: call of overloaded 'write_data(int, int)' ambiguous
bei write_data(0x00,0x00); sagt der compiler: error: call of overloaded 'write_data(int, int)' ambiguous
bei write_data(1,0); compiliert er
bei write_data(0x01,0); compiliert er
warum erkennt er zwei nullen als int?
wie kann ich das problem lösen (schön und ohne typecast)?
folgende funktionen existiern:
code: [select]
void write_data(uint8_t data);
void write_data(uint8_t byte1, uint8_t byte2);
void write_data(uint8_t* bytes, uint8_t count);
bei write_data(0,0); sagt der compiler: error: call of overloaded 'write_data(int, int)' ambiguous
bei write_data(0x00,0x00); sagt der compiler: error: call of overloaded 'write_data(int, int)' ambiguous
bei write_data(1,0); compiliert er
bei write_data(0x01,0); compiliert er
warum erkennt er zwei nullen als int?
wie kann ich das problem lösen (schön und ohne typecast)?
1) konstanten kann man auch explizit definieren:
2) warum nicht mit suffix:
http://arduino.cc/de/reference/integerconstants
code: [select]
const uint8_t typed_zero = 0;
2) warum nicht mit suffix:
http://arduino.cc/de/reference/integerconstants
Arduino Forum > International > Deutsch (Moderator: uwefed) > Funktion Overload
arduino
Comments
Post a Comment