【发布时间】:2025-12-18 16:20:03
【问题描述】:
我有如下方法(是ShoppingCart的实例方法):
- (void) showShoppingCartProducts
{
for (Product *eachProduct in products)
{
[eachProduct logName]
}
}
我还有一个方法(是ShoppingCart的实例方法):
- (void) addProduct: (Product *) newProduct {
[products objectForKey: newProduct.name];
}
它应该遍历(NSMutableDictionary *) products中的每个(Product *) eachProduct。
logName 执行以下操作(它是Product 的实例方法):
- (void) logName
{
NSLog(@"%@", self.name);
}
这是我的main() 函数
int main(int argc, const char * argv[]) {
ShoppingCart* myShoppingCart = [[ShoppingCart alloc] init];
Product* myProduct = [[Product alloc] init];
myProduct.name = @"My Latest Product";
[myShoppingCart addProduct: myProduct];
[myShoppingCart showShoppingCartProducts];
return 0;
}
程序运行后返回0,但什么也不显示。
是否可以在 NSMutableDictionary 上使用快速枚举?
【问题讨论】:
-
你永远不会打电话给
showShoppingCartProducts。 -
您没有在代码示例中的任何地方使用
showShoppingCartProducts...? -
而且你没有向我们展示 Product 是如何声明的,或者其中的数组是如何初始化的。
-
也许你只需要调出 Xcode 窗口中输出的部分。按右上角these three buttons的中间一个
-
@adam,您的链接显示了一些广告截图。这是故意的吗?
标签: objective-c macos fast-enumeration