Question: What's the difference between the following two lines?

1.

```
[CCLayer node]

```

2.

```
[[CCLayer alloc] init]

```

Answer: 
`[CCLayer node]` returns an **autoreleased** object.

`[[CCLayer alloc] init]` returns an **non-autoreleased** object
James got it right, but I just want to add that OP could just look into `CCNode.m` (or simply context-clicking on `node` in Xcode and choose "Jump to Definition") to find the following method implementation:

```
#pragma mark CCNode - Init & cleanup

+(id) node
{
    return [[[self alloc] init] autorelease];
}

```

So, `[CCLayer node]` is equivalent to `[[[CCLayer alloc] init] autorelease]`.