remotecontrol Geschrieben September 22, 2013 at 11:24 Geschrieben September 22, 2013 at 11:24 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. Zitieren
photron Geschrieben September 23, 2013 at 13:28 Geschrieben September 23, 2013 at 13:28 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. Zitieren
remotecontrol Geschrieben September 23, 2013 at 18:59 Autor Geschrieben September 23, 2013 at 18:59 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. Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.