Come convertire? (Classe Objective C -> Delphi XE4)XE4 (Firewallkey + libreria statica iOS), conversione Pascal dalla classe Objective C?
e Come utilizzare la classe Objective-C nella libreria statica di Delphi XE?
Di seguito è la mia prima prova. Ma fa errore.
Objective C Fonte
// objective C : test.h ----------------------------------------
@interface objc_test : NSObject {
BOOL busy;
}
- (int) test :(int) value;
@end
// objective C : test.m ----------------------------------------
@implementation objc_test
- (int) test :(int) value {
busy = true;
return(value + 1);
}
@end
Qui è sbagliato il mio codice di conversione. Come risolvere il problema?
Delphi Fonte
// Delphi XE4/iOS -------------------------------------------
{$L test.a} // ObjC Static Library
type
objc_test = interface (NSObject)
function test(value : integer) : integer; cdecl;
end;
Tobjc_test = class(TOCLocal)
Public
function GetObjectiveCClass : PTypeInfo; override;
function test(value : integer): integer; cdecl;
end;
implmentation
function Tobjc_test.GetObjectiveCClass : PTypeInfo;
begin
Result := TypeInfo(objc_test);
end;
function Tobjc_test.test(value : integer): integer;
begin
// ????????
//
end;
Grazie
Simon, Choi
in cui sembra essere implementare la funzione sia in obj-c e Pascal. Non vuoi implementare in obj-c e consumare in pascal? –
Inoltre, sono sicuro che il compilatore fa più di "errore". Il compilatore si sforza di descrivere l'errore. Perché non puoi fare lo sforzo di dirci cosa dice? –