解析“60k”大佬的19道C#面試題(上)
阿新 • • 發佈:2020-03-29
# 解析“60k”大佬的19道C#面試題(上)
## 先略看題目:
1. 請簡述`async`函式的編譯方式
2. 請簡述`Task`狀態機的實現和工作機制
3. 請簡述`await`的作用和原理,並說明和`GetResult()`有什麼區別
4. `Task`和`Thread`有區別嗎?如果有請簡述區別
5. 簡述`yield`的作用
6. 利用`IEnumerable`實現斐波那契數列生成
7. 簡述`stackless coroutine`和`stackful coroutine`的區別,並指出`C#`的`coroutine`是哪一種
8. 請簡述`SelectMany`的作用
9. 請實現一個函式`Compose`用於將多個函式複合
10. 實現`Maybe` `monad`,並利用`LINQ`實現對`Nothing`(空值)和`Just`(有值)的求和
11. 簡述`LINQ`的`lazy computation`機制
12. 利用`SelectMany`實現兩個陣列中元素的兩兩相加
13. 請為三元函式實現柯里化
14. 請簡述`ref struct`的作用
15. 請簡述`ref return`的使用方法
16. 請利用`foreach`和`ref`為一個數組中的每個元素加`1`
17. 請簡述`ref`、`out`和`in`在用作函式引數修飾符時的區別
18. 請簡述非`sealed`類的`IDisposable`實現方法
19. `delegate`和`event`本質是什麼?請簡述他們的實現機制
沒錯,這是一位來自【廣州.NET技術俱樂部】微信群的偏`Programming Languages`(`程式語言開發科學`)的大佬,本文我將**斗膽**回答一下這些題目