関数はタイプですか?
2956 ワード
キャンプ場の話題は私を深く悩ませた.
swift自由自在に関数(a.k.a一級オブジェクト)を割り当てて使用することは既知であるが,タイプに疑問がある
いいえ、その前に
まず、SWIFTは、タイプを
両者は視覚的に明らかな違いがある.
Name typeは明確に統一されたタイプで命名されています
(ex. String, Int)
Compound typeはFunction/Topleではなく、要素を組み合わせてタイプのように使用します
(ex. (Int) -> Bool, (String, String))
要するに、
関数タイプは、要素を組み合わせたComponentTypeの一種です
ここまで,関数タイプはタイプが正しいことを証明した.
しかし、元の問題は「関数はタイプですか?」に質問
では「
「
まず、関数のタイプと関数が同じかどうかを見てみましょう.
分かりやすくするために少し問題を変えた.
整数タイプと整数は違いますか?
この問題の答えは想像以上にはっきりしている
すなわち、整数タイプと整数の関係
タイプとインスタンスの関係と見なすことができます
再び戻ってきて、
関数のタイプと関数は違いますか?
違います.
関数タイプはタイプ、関数は関数タイプのインスタンスです
ただし、
(関数タイプのインスタンス概念)
swift自由自在に関数(a.k.a一級オブジェクト)を割り当てて使用することは既知であるが,タイプに疑問がある
いいえ、その前に
타입
とは何か説明できないことに気づきました.🐵 関数「タイプ」はタイプです
まず、SWIFTは、タイプを
Named Type
およびCompound Type
に分割する両者は視覚的に明らかな違いがある.
//Named type
let hisName: String = "Alex"
let hisAge: Int = 20
//Compound type
let hisAction: (Int) -> Bool = goToSchool
let hisParents: (mother: String, father: String) = ("Kim", "Jang")
Name typeは明確に統一されたタイプで命名されています
(ex. String, Int)
Compound typeはFunction/Topleではなく、要素を組み合わせてタイプのように使用します
(ex. (Int) -> Bool, (String, String))
関数タイプは、要素を組み合わせたComponentTypeの一種です
🐇 関数のタイプと関数は違いますか?
ここまで,関数タイプはタイプが正しいことを証明した.
しかし、元の問題は「関数はタイプですか?」に質問
では「
함수타입
はタイプ」という命題は「
함수
がタイプ」であることを証明できますか?まず、関数のタイプと関数が同じかどうかを見てみましょう.
分かりやすくするために少し問題を変えた.
整数タイプと整数は違いますか?
この問題の答えは想像以上にはっきりしている
let number: Int = 10
上記のコードでは、Int
は整数タイプであり、10
は整数であるすなわち、整数タイプと整数の関係
タイプとインスタンスの関係と見なすことができます
再び戻ってきて、
関数のタイプと関数は違いますか?
違います.
関数タイプはタイプ、関数は関数タイプのインスタンスです
🎉 n/a.結論
함수 타입
タイプが正しいただし、
함수
はタイプではありません(関数タイプのインスタンス概念)
Reference
この問題について(関数はタイプですか?), 我々は、より多くの情報をここで見つけました https://velog.io/@yohanblessyou/함수는-타입인가テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol