我有一个同时使用 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
错误。