Those are three totally distinct lexical elements and the amount of whitespace in-between them is totally irrelevant. These are all equivalent in terms of what the compiler generates:
NSString*x;
NSString *x;
NSString* x;
NSString * x;
NSString * x;
NSString /* comment here */ * /* and another */ x;
I prefer the NSString *x
variation since the pointer specifier belongs to the variable, not the type. By that, I mean that both of these:
int *x, y;
int* x, y;
create an integer pointer called x
and an integer called y
, not two integer pointers.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…