gpt4 book ai didi

stack - iOS SDK 是否提供队列和栈?

转载 作者:IT王子 更新时间:2023-10-29 07:44:05 25 4
gpt4 key购买 nike

我正在编写一个 iPhone 应用程序,令我惊讶的是在 Apple 的 Foundation Framework 中似乎没有 NSQueue 或 NSStack 类.我看到我自己动手很容易,从 NSMutableArray 开始,所以我会这样做,除非我错过了什么。我错过了什么吗?

最佳答案

这是我的 Stack 类,以防它对那些追随我的人有用。如您所见,pop 方法包含足够多的代码,您希望将其分解出来。

堆栈.h:

#import <Foundation/Foundation.h>

@interface Stack : NSObject {
NSMutableArray *contents;
}

- (void)push:(id)object;
- (id)pop;

@end

堆栈.m

#import "Stack.h"

@implementation Stack

// superclass overrides

- (id)init {
if (self = [super init]) {
contents = [[NSMutableArray alloc] init];
}
return self;
}

- (void)dealloc {
[contents release];
[super dealloc];
}

// Stack methods

- (void)push:(id)object {
[contents addObject:object];
}

- (id)pop {
id returnObject = [[contents lastObject] retain];
if (returnObject) {
[contents removeLastObject];
}
return [returnObject autorelease];
}

@end

关于stack - iOS SDK 是否提供队列和栈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3652709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com