首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我使用iOS-通用-框架时,我有一个问题。

当我使用iOS-通用-框架时,我有一个问题。
EN

Stack Overflow用户
提问于 2013-11-25 04:49:40
回答 1查看 64关注 0票数 0

iOS-Universal-Framework's页面:https://github.com/kstenerud/iOS-Universal-Framework --这是一个为iOS构建通用(arm6、arm7和模拟器)框架的XCode项目模板。

我使用这个模板构建了我的框架,但是我遇到了一个问题,我把我所有的类打包到模板中,包括.h文件Macro.h中的宏定义Macro.h,但是问题是.kCOMPANYID必须由使用我的框架的人来修改,所以kCOMPANYID必须在框架之外定义,但问题是,我的框架中的一些类必须使用kCOMPANYID,所以这是一个冲突,我不知道该如何做,请帮助我,谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-25 04:54:33

你应该尽量避免#define

一种方法是为其设置一个setter/getter函数。

例如:

代码语言:javascript
复制
// public header file

void SetCompanyId(int value);
// int GetCompanyId();  // it can be in public header or private header

// some .m or .c or .cpp file

static int companyId;

int GetCompanyId() { return copanyId; }
void SetCompanyId(int value) { companyId = value; }

或者,如果用户mush提供了一个id,只需将其设置为全局变量即可。您可以将const添加到其中,这样值就不会更改

代码语言:javascript
复制
// header file in your framework
extern const int kCompanyId;

// some implementation file in user code
const int kCompanyId = 2;

那么用户必须提供一个公司id,否则就会出现链接错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20184963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档