Objective-C中的星号

时间:2013-11-07 16:03:39

标签: objective-c

我真的需要有人来帮助我。 我正在尝试学习对象C.但我不明白星号运动。 我会自己解释一下:

NSDate *date = [NSDate date]

这里我们要求使用date方法创建一个NSdate实例并存储在date中。这是对的吗?

如果我在@interface并且我这样做:

@interface Gretter : NSObject
{
 NSString  *greetings
}

这里我们声明属于NSObject超类的Gretter子类,我们将方法问候语添加到子类问候语中 这是对的吗?

我真正不理解的是:

NSString* greeting = @"hello"

为什么星号会附加到NSString *这里?

这是3个单独的示例,不属于同一个程序。 我只是想明白为什么星号*改变位置

非常感谢

CL

2 个答案:

答案 0 :(得分:1)

此:

NSString* greeting = @"hello";

而且:

NSString *greeting = @"hello";

完全相同,您正在定义一个指向字符串对象的指针。

答案 1 :(得分:1)

让我依次回答你的每一个问题:

这里我们要求date方法创建一个NSdate实例并存储在date中。这是对的吗?

是的,这是对的。这说起来有点奇怪,但你有正确的想法。

这里我们声明属于NSObject超类的Gretter子类,我们将方法问候添加到子类问候语是否正确?

您的正确GretterNSObject的子类。但是,您添加的是名为greetings的实例变量,而不是方法。

为什么星号会附加到NSString *这里?

星号的位置确实无关紧要。在每种情况下,您都在创建/定义/初始化指向对象的指针。 NSString* fooNSString *foo相同,与NSString * foo相同。这只是一种风格问题。