私の質問はおそらく非常に簡単に答えることができます。BOOL パラメーターを取得するカスタム作成指定イニシャライザーがあります。
その中で、渡された BOOL などがあるかどうかを確認したいと思います。それ以外の場合は、例外を発生させたいと思います。
また、デフォルトの init をオーバーライドして、super を呼び出す代わりに、指定された初期化子を指すようにし、指定された初期化子を使用していないときにユーザーが適切な例外を取得できるように、そこに nil を渡します。
-(id)init
{
return [self initWithFlag:nil];
}
-(id)initWithFlag:(BOOL)flag
{
//get the super self bla bla
if (flag IS-NOT-A-BOOL)
{
//raising exception here
}
//store the flag
return self;
}
IS-NOT-A-BOOL の代わりに何が必要ですか?