Geschrieben September 22, 2013 at 11:2422. Sep 2013 Hallo Admins, In den C/C++ Bindings liefern die API-Funktionen int servo_is_position_reached_callback_enabled(Servo *servo, uint8_t *ret_enabled); int servo_is_velocity_reached_callback_enabled(Servo *servo, uint8_t *ret_enabled); jeweils einen uint8_t zurück, andere Funktionen liefern einen "bool" (z.B. is_enabled). Kann man das noch vereinheitlichen und überall einen bool verwenden? In der Datenübertragung sollte das ja keinen Unterschied machen.
Geschrieben September 23, 2013 at 13:2823. Sep 2013 Prinzipiell hast du recht, das hätte bool statt uint8_t sein sollen. Aber es ist jetzt eigentlich zu spät das noch zu ändern. Denn das würde die API brechen und das wollen wir eigentlich vermeiden.
Geschrieben September 23, 2013 at 18:5923. Sep 2013 Autor Ich kann das Argument prinzipiell nachvollziehen, das bedeutet aber im Umkehrschluss, dass Vereinheitlichungen nicht möglich sind. Echte C-Programme merken die Änderung nicht, weil die Parameterleiste binär-kompatibel ist (bleibt 1 Byte Wert). C++ Programm sind hier schnell umgestellt, weil es Compile-Fehler geben würde. Diese Funktionen gehören zudem zu den eher weniger benutzten Funktionen, nicht gerade jene Funktionen, die jeder benutzen muss. Ich habe keinen Überblick, wie das in den anderen Bindings aussieht. In Java wäre wohl nichts zur ändern.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.