【发布时间】:2011-03-29 17:07:26
【问题描述】:
我正在尝试编写我的第一个自定义 Cocoa 框架,并且我想从框架中公开一个简单的 C 函数,该函数包含一堆功能,就像 NSApplicationMain 所做的那样。当我直接从项目中直接导入文件时,一切正常,项目构建完成,我的 C 函数被正确调用。
现在我有一个包含文件的新 Cocoa 框架项目,我无法构建我的程序,因为我收到“未找到符号”错误消息,特别是针对我的 C 函数。
我已经尝试在头文件中的函数定义前加上extern,但仍然没有。
谁能给我一个提示?如何通过自定义 Cocoa 框架公开标准 C 函数?
大致了解我在做什么:
使用我的自定义框架的程序:
#import <BDWebApplicationFramework/BDWebApplication.h>
int main (int argc, const char * argv[]) {
return BDWebApplicationMain(argc, (const char **)argv);
}
我的框架头文件:BDWebApplication.h
#import <Foundation/Foundation.h>
@interface BDWebApplication : NSObject {
NSString *name;
}
@property (readwrite, copy) NSString *name;
@end
extern int BDWebApplicationMain(int argc, const char * argv[]);
我的框架文件:BDWebApplication.m
#import "BDWebApplication.h"
@implementation BDWebApplication
@synthesize name;
- (id)init
{
[super init];
name = @"New name";
return self;
}
- (void)dealloc
{
[name release];
[super dealloc];
}
@end
int BDWebApplicationMain(int argc, const char * argv[])
{
// Do some Obj-c stuff here
}
【问题讨论】:
标签: c objective-c frameworks