Go - Interface value


  • Real type of an interface variable is decided dynamatically
  • Need be careful when comparing interface, panic will occur when real type is not comparable such as slice.
  • nil value assigned to an interface variable is different from nil pointer assigned to a variable
  • Ex. check is argument value nil in function sill get wrong result
  • Do not assign nil pointer to interface. Because dynamic type is not nil but dynapic value is nil, cause dynamic dispatch panic


沒有留言:

張貼留言

別名演算法 Alias Method

 題目 每個伺服器支援不同的 TPM (transaction per minute) 當 request 來的時候, 系統需要馬上根據 TPM 的能力隨機找到一個適合的 server. 雖然稱為 "隨機", 但還是需要有 TPM 作為權重. 解法 別名演算法...