Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.
VS - IDLFlex Problem (#9978549)
Hi,
in meinem generierten Skeleton steht:
void result = _HelloServer_impl->sayHello( val0 , val1);
ist leider falsch, weil es müsste doch heißen:
z. B.
double result = _HelloServer_impl->sayHello( val0 , val1);
ODER
_HelloServer_impl->sayHello( val0 , val1);
Wie kann ich testen, ob ein bestimmter Typ vorliegt?
So sieht’s in meiner XML Steuerungsdatei aus:
result = __impl->(
Kann mir einer helfen?
Danke im Voraus!!!
Du hast es zwar nicht direkt so beschrieben, aber ich schätze mal du hast folgendes Problem :
Wie gehst du mit Funktionen um, die void zurückliefern?
Also sowas (im IDL-File):
interface Printer2
{
void write( in message msg );
};
Die richtige Lösung dafür wäre natürlich, so wie du schon angesprochen hast, irgendwie eine CASE- Anweisung auf den Typen zu machen, und da dann entweder die Variable deklarieren, oder gar nix machen, denn eine void-Variable kann man ja nicht deklarieren…
Ich habe mich allerdings für die einfachere Variante entschieden, und erlaube einfach im IDL keine void-Funktionen. Das spart einen Haufen Arbeit, und bei der Vorführung der Programme ist das auch nicht weiter aufgefallen…