Вызов метода Swift из класса Objective C

77
8

Я хочу создать наследование между быстрым классом и классом object-c.

быстрый класс создает человека, цель класса c создает ученика (который также является человеком)

Мой быстрый человек:

import Foundation
class person {
var age: Int
var height: Float

init(){
self.age = 22
self.heigh =1.80
}

init(age:Int, height:Float){
self.age=age
self.height=height
}
}

ученик Objective-c:

student.h:

#import <Foundation/Foundation.h>
#import "Praktikum2a-Swift.h"

@interface student : person

@property (nonatomic) int studentID;

-(void)setStudentID:(int)stdID;

@end

student.m:

#import <Foundation/Foundation.h>
#import "Praktikum2a-Swift.h"
#import "student.h"

@implementation student

-(id)init{
return [self initWithStudentID:1337];
}

-(id)initWithStudentID:(int)stdID{
self=[super init];
if(self){
[self setStudentID:stdID];
}
}

@end

и главное:

#import <Foundation/Foundation.h>
#import "student.h"

int main(int argc, const char * argv[]) {
@autoreleasepool {
student *hugo = [[student alloc] init];

[hugo setAge: 22 setHeight: 1.80];

NSLog(@"Hello, World!");
}
return 0;
}

Название проекта и пакета - Praktikum2a

в принципе я не могу понять, почему мой ученик не человек... =/

спросил(а) 2021-01-25T12:40:05+03:00 4 месяца, 4 недели назад
1
Решение
77

На этой странице написано: https://developer.apple.com/library/ios/documentation/swift/conceptual/buildingcocoaapps/MixandMatch.html#//apple_ref/doc/uid/TP40014216-CH10-XID_77

Обратите внимание, что вы не можете подклассифицировать класс Swift в Objective-C

ответил(а) 2021-01-25T12:40:05+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема