Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c (UIApplication*)为什么星号前有空格?_Objective C - Fatal编程技术网

Objective c (UIApplication*)为什么星号前有空格?

Objective c (UIApplication*)为什么星号前有空格?,objective-c,Objective C,为什么星号前有空格?这只是一种风格偏好,在这种情况下,空格没有任何意义。正如前面所说,它只是风格;但通常认为将空格放在星号之前而不是之后是一种好的风格(即NSString*aString;而不是NSString*aString;,因为星号绑定到名称,而不是类型;参考Steve的答案) 然后,当类型独立时,通常会扩展相同的样式,例如在-(NSString*)someMethod中或-(void)带有参数的someMethod:(NSString*)参数名,作为保持一致性的问题。这是一个,我对Obj

为什么星号前有空格?

这只是一种风格偏好,在这种情况下,空格没有任何意义。

正如前面所说,它只是风格;但通常认为将空格放在星号之前而不是之后是一种好的风格(即
NSString*aString;
而不是
NSString*aString;
,因为星号绑定到名称,而不是类型;参考Steve的答案)

然后,当类型独立时,通常会扩展相同的样式,例如在
-(NSString*)someMethod中
-(void)带有参数的someMethod:(NSString*)参数名,作为保持一致性的问题。

这是一个,我对Objective-C相当陌生,所以如果这不是正确的Objective-C语法,请原谅。它将回答这个问题。就问题中给出的参数而言,关于它的答案基本上是正确的。当它在C或C++中的单个行上声明多个变量时,这是个问题(这是我不确定Obj-C是否支持这个部分)。 及

是等价的;但是,在处理多个声明时

int *i;
不一样

int* i, j;
*应用于i变量,而不是int,因此您需要在每个要生成指针的变量上使用*


因此,在类名后面加空格的目的是为了在文体上体现这一点。

实际上,
int*i
int*i
(int*)i
都有不同的含义。前两个是指针。但最后一个实际上是说“i”返回一个指向int的指针

int *i, *j;

这实际上是说“app”返回一个指针

这只是一种风格。有些人喜欢使用这个空间,有些人不喜欢。通常,喜欢将运算符附加到类型的人不使用空格,而喜欢将运算符附加到变量的人在键入方法声明时使用空格。这基本上取决于你的风格(或你的团队遵循的风格)来决定你喜欢哪一种。
int* i, j;
int *i, *j;
-(void)applicationDidFinishLaunching:(UIApplication *) app {