Objective-Cはメソッドのオーバーロードをサポートしていません。
なぜですか?
それは可能ですが、アップルはそれを実装しないと決めましたか? Objective-Cの動的な性質のために実行できませんか?なぜObjective-Cはメソッドのオーバーロードをサポートしていませんか?
私は、メソッドのオーバーロードがコンパイルされた言語(Java、C#)で実行でき、インタプリタ言語(Ruby、Python)では実行できないという印象を受けました。
真実を保持していますか?
Objective-Cはメソッドのオーバーロードをサポートしていません。
なぜですか?
それは可能ですが、アップルはそれを実装しないと決めましたか? Objective-Cの動的な性質のために実行できませんか?なぜObjective-Cはメソッドのオーバーロードをサポートしていませんか?
私は、メソッドのオーバーロードがコンパイルされた言語(Java、C#)で実行でき、インタプリタ言語(Ruby、Python)では実行できないという印象を受けました。
真実を保持していますか?
コンパイルされた言語と解釈される言語の間ではなく、静的に型付けされたもの(Java、C#)と動的に型付けされたもの(Ruby、Python、Objective-C)の区別があります。動的に型付けされた言語では、型情報は実行時まで知られていないことが多い。実行時に、Objective-Cにはすべてのオブジェクトが静的にid
と入力されています。
また、動的に型指定されたOO言語のコアアイデアは、送信したいメッセージに応答する限り、オブジェクトの種類を気にする必要がないということです。そのため、タイプに基づいたオーバーロードは、それに直面しています。
仮に、メソッドのオーバーロードをサポートする動的に型指定された言語を使用することは可能ですか?そのような言語は現在存在していますか?仮説的には – Chiron
?確かに。もしあなたがそこに行きたいなら(そして既存のコーディング標準から完全に離れたければ)、今日のObjective-Cの上で行うこともできます。それは本当に「それほど難しくない」(たとえとにかく「ハード」の価値のためでもない)。 – bbum
私は恐れているチャック、私はあなたの答えを理解していない。あなたは何を言おうとしているのか説明してください。 – Nitish