首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建NSInteger类别

创建NSInteger类别
EN

Stack Overflow用户
提问于 2011-03-16 05:51:20
回答 2查看 1.9K关注 0票数 2

当试图为NSInteger创建一个类别时,编译器抱怨它“找不到‘NSInteger’的接口声明”。不能创建NSInteger类别吗?

一个简单的测试将显示编译器错误:

代码语言:javascript
复制
#import <Foundation/Foundation.h>

@interface NSInteger (NSInteger_Extensions)

-(NSInteger)simpleTest;

@end



#import "NSInteger_Extensions.h"

@implementation NSInteger (NSInteger_Extensions)

-(NSInteger)simpleTest {
    return self + 5;
}

@end

这是可能的吗?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-16 05:53:17

NSinteger不是一个接口。所以这是不可能的。

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_DataTypes/Reference/reference.html

从上面的链接:

代码语言:javascript
复制
Used to describe an integer.

#if __LP64__ || TARGET_OS_EMBEDDED || TARGET_OS_IPHONE || TARGET_OS_WIN32 || NS_BUILD_32_LIKE_64
typedef long NSInteger;
#else
typedef int NSInteger;
#endif

PS:,但是你可以做一个NSNumber的分类。我想这是你想做的事

票数 9
EN

Stack Overflow用户

发布于 2011-03-16 05:54:30

NSInteger只是int的一个类型定义,它是一种基本类型。因为它不是一个对象,所以你不能给它添加一个类别。

您可以将其添加到NSNumberNSValue中。

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

https://stackoverflow.com/questions/5318534

复制
相关文章

相似问题

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