1. 程式人生 > >解析“60k”大佬的19道C#面試題(上)

解析“60k”大佬的19道C#面試題(上)

# 解析“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`(`程式語言開發科學`)的大佬,本文我將**斗膽**回答一下這些題目