3 Stimmen

Hilfe beim Verstehen von C#-Code und bei der Portierung nach Objective-C

Ok, ich habe diesen Prototyp, der von jemand anderem in C# geschrieben wurde und ich versuche, es in Objective-C zu setzen. Nun, ich habe keine formale Erfahrung mit C# noch gehabt, so dass ich nicht alles über es noch wissen. Ich verstehe, was die ersten drei Variablen sind, aber ich habe Probleme damit, was die vierte und fünfte Zeile (c_data) tun. Wird in der vierten eine Methode deklariert und in der fünften definiert, oder was passiert da? Vielen Dank für Ihre Hilfe!

public class c_data {
    public double value;
    public int label;
    public int ID;
    public c_data() { }
    public c_data(double val) {
        value = val;
    }
}

1voto

nikmd23 Punkte 8985

Die 4. und 5. Zeile sind beide Konstruktoren.

Die 4. Zeile ist der "Standard"-Konstruktor, der in diesem Fall keine Variablen initialisiert.

Der Konstruktor in der 5. Zeile setzt die Variable namens value auf den übergebenen Parameter.

0voto

Jonathan Sterling Punkte 18133

Wenn ich darf, ist es in etwa so, als hätte man die beiden folgenden Methoden in einer Objective-C-Klasse:

  • (id)init;
  • (id)initWithNumber:(NSNumber *)number;

Konstrukteure und Initialisierer sind analog, sie sehen nur ein wenig anders aus.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X