![見出し画像](https://assets.st-note.com/production/uploads/images/68636240/rectangle_large_type_2_c41f14d033b0af7cad8b299dff3e029c.png?width=1200)
【Console Application】基本文法 15【学習記】
制御構造とか特殊な演算とかそういう手合の話🤤
Q.
クラスの判別ができなかったって?
A.
よく考えたら OC のクラスは C++ のそれとは違う物だった🙄
→ OC のクラスは C にガワを被せてクラスっぽい事ができるようにしてある言語なので C++ のクラス検査方法は適用できない
基準のコードはこちら
【Console Application】基本文法 10【学習記】
https://note.com/sayka/n/nc4cb3e52f29d
【 OC 】変数種別判定クラス
NSObject とプリミティブで違う結果にした方が良い気がするもそのまま続きを作っちゃうよー🤪
C++ で作ってあっても NSObject 系のものに変換するようにしてあれば随分簡単に🤤
それじゃビルド👇
😫😫😫(ゴシャァ
どうしたらいいんだーって考えてたら、ポインタとかの渡し方は間違ってないのに出るって事はそもそもキャストできないから怒られてるんだよなってなってそこから
OC のクラスは
C++ のクラスとは別物
というのを思い出した😞
OC のオブジェクトは C でクラスを使えるように工夫したシロモノであって C++ のクラスとは完全に別物の実装なのよね。これややこしいけど🙄
名前も class だから間違いやすい😞
結局 OC 特有の class 判別を使う事になるわけなんだけど…
まぁ、エラーは出なくなるよね🤤
ヨシ!👈🤪
次回は
…あれ? template 無効化して書き換えたから throw が消えてる?🙄
次回はそこからかな。流石にすぐ終わると思うけど。