1

我有一个同时使用 Obj-C 和 Swift 的 iOS 项目。

main.m中,我想实例化一个 Swift 可以访问的变量。具体用例是将绝对时间存储在 处main,然后测量从main其他地方开始经过的时间。

这是我的相关文件的样子:

main.m

#import <UIKit/UIKit.h>

CFAbsoluteTime StartTime;

int main(int argc, char* argv[])
{

    StartTime = CFAbsoluteTimeGetCurrent(); // This is what I want to access elsewhere.
    @autoreleasepool {
        ...
    }
}

myapp-Bridging-Header.h

#import "AppDelegate.h"
extern CFAbsoluteTime StartTime;

AppDelegate.h

#import <UIKit/UIKit.h>

extern CFAbsoluteTime StartTime;

@interface AppDelegate : NSObject <UIApplicationDelegate>{}

@property (nonatomic, strong) IBOutlet UIWindow* window;
// ... other irrelevant @property

@end

然后在实际.swift文件中,我只是试图在StartTime没有声明任何内容的情况下访问(因为我认为它是有效的,因为它被外部化了),但我遇到了一个unresolved identifier错误。

4

0 回答 0