From 80c548879020ede62dc4bf44c1a9238139b045e1 Mon Sep 17 00:00:00 2001 From: oden Date: Wed, 13 Mar 2013 23:03:22 +0900 Subject: [PATCH] =?UTF-8?q?int=E5=AF=BE=E5=BF=9C=20refs=20#6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- OCppOperator/ID.h | 11 +++++++++-- OCppOperator/ID.mm | 7 ++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/OCppOperator/ID.h b/OCppOperator/ID.h index 8d8a0e2..9ed6801 100644 --- a/OCppOperator/ID.h +++ b/OCppOperator/ID.h @@ -33,10 +33,17 @@ class ID /*! @method ID @abstract コピーコンストラクタ。 - @discussion 無指定の場合、nil。暗黙の型変換により、ID型を渡すこともできる。渡されたオブジェクトはretainされる。id型からの暗黙の型変換を実現している。 - @param id + @discussion id型からの暗黙の型変換を実現している。 + @param id 無指定の場合、nil。暗黙の型変換により、ID型を渡すこともできる。渡されたオブジェクトはretainされる。 */ ID(const id = nil); + /*! + @method ID + @abstract コピーコンストラクタ。 + @discussion id型からの暗黙の型変換を実現している。 + @param int NSNumberに変換可能な型。 + */ + ID(const int); /*! @method ~ID @abstract デストラクタ。 diff --git a/OCppOperator/ID.mm b/OCppOperator/ID.mm index be824c7..3c44bfb 100644 --- a/OCppOperator/ID.mm +++ b/OCppOperator/ID.mm @@ -13,6 +13,11 @@ this->object = [source retain]; } +ID::ID(const int t) +{ + this->object = [@(t) retain]; +} + ID::~ID() { [this->object release]; @@ -32,7 +37,7 @@ ID& ID::operator+=(const id source) { - [this->object autorelease]; + [*this autorelease]; this->object = [[*this stringByAppendingFormat:@"%@", source] retain]; return *this; }