使用する場合:
NSString *newText = sender.titleLabel.text;
sender.titleLabel.textにある既存のオブジェクトへのポインタを設定しているだけです。この新しいポインターがNSString型のオブジェクトを指していることをコンパイラーに伝えています。
注: ポインターnewTextとsender.titleLabel.txtは両方とも同じオブジェクトを指すようになったため、いずれかのポインターを使用してオブジェクトにアクセスすると、基になるオブジェクトに加えられた変更(テキストの変更など)が反映されます。
注2:使用した場合:
NSString *newText = [[NSString alloc] initWithFormat:@"%@",sender.titleLabel.text];
(allocを使用して)まったく新しいオブジェクトを作成し、alloc操作の実行時にsender.titleLabel.textの文字列値を使用してこの新しいオブジェクトを初期化しました。これで、 newTextとsender.titleLabel.textは2つのまったく異なるNSStringオブジェクトになり、互いに関連性がなく、互いに完全に独立して変更/管理/使用/割り当て解除できます。