LoginSignup
6

More than 5 years have passed since last update.

Objective-Cの文字列を+(プラス演算子)で連結できるようにするフレームワークを作ってみた

Last updated at Posted at 2013-03-11

NSStringを+で連結するためのフレームワークを作ってみました。
具体的には @"hoge" + @"piyo" で @"hogepiyo" になります。
現状iOSとiOSシミュレータ向けUniversal Frameworkです。

使い方はこんな感じです。

1. 落としてきます

下記リンク先のZIPボタンを押して、フレームワークを落としてきます。
oden/OCppOperator - GitHub

2. プロジェクトに追加します

落としてきたZIPファイルを解凍するとOCppOperator.frameworkというフォルダがあるので、
それをXcodeのプロジェクトのFrameworkグループへドラッグアンドドロップで追加します。

3. 使います

Objective-C++を用いているので、+で文字列連結するソースの拡張子は、
*.mmに変更してください。

具体的な使用例としては下記のような感じです。

main.mm
//
//  main.mm
//  Perorist
//
//  Created by oden on 13/03/11.
//  Copyright (c) 2013年 JITAKUKEIBI INC. All rights reserved.
//

#import <OCppOperator/OCppOperator.h>
// MARK: 1.フレームワークのヘッダファイルを#importします

int main(int argc, char *argv[])
{
    // MARK: 2.先頭のオブジェクトをID型にキャストすると、+で文字列結合できます。
    NSString* azpr = (ID)@"あずにゃん" + @"(^ω^)" + @"prpr";
    NSLog(@"%@", azpr);
    // 結果: あずにゃん(^ω^)prpr

    // MARK: 3.キャストの代わりにこんなんでも行けます。
    NSString* kbpr = @"こばとちゃん".ID + @"(^ω^)" + @"prpr";
    NSLog(@"%@", kbpr);
    // 結果: こばとちゃん(^ω^)prpr

    // MARK: 4.ついでにNSNumberも行けます。
    NSString* ykpr = @"長門".ID + @"(^ω^)" + @"prpr" + @" x " + @(15532);
    NSLog(@"%@", ykpr);
    // 結果: 長門(^ω^)prpr x 15532

    return 0;
}

キャストが微妙にカッコ悪いですが(括弧だけにっ!)、
気が向いたら使ってあげてください。

また、ご意見・ご要望等を頂けると、泣いて喜びます。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6