タグ「obj-c」 の検索結果(1/1)

2013年7月 1日

obj-cで文字列リテラルのprefixとかsuffixな連結

Javaで文字列リテラル定数を定義するのに、

static final String PREFIX_HTTP = "http://";
static final String URL = PREFIX_HTTP + "hogehoge.com";

みたいにするやつをobj-cでもやりたいなと思いつつ、できないと勝手に思ってたのですが

@zaki50に「Cだとよくみるふつうの」とか言われて、ああ、そういえばとか思い出しました。

結局のところ、こういうことです。

// #define "hogehagehige"に同じ
#define STR_HOGE "hoge" "hage" "hige"

// @"hoge1hoge2hoge3"に同じ
static NSString * const HOGE = @"hoge1" "hoge2" "hoge3";

// prefix/suffixな連結はこうできる
#define HTTP_PREFIX "http://"
#define COM_SUFFIX ".com"
// http://www.google.com になる
static NSString * const URL_GOOGLE = @HTTP_PREFIX "www.google" COM_SUFFIX;
// http://www.yahoo.com になる
static NSString * const URL_YAHOO = @HTTP_PREFIX "www.yahoo" COM_SUFFIX;