reflection三大定律

2021-10-01 08:01:47 字數 1147 閱讀 9941

從inte***ce value到reflection object

package main

import

("fmt"

"reflect"

)func

main()

valueof的引數是inte***ce,因此這個函式實際上是inte***ce物件轉反射值

從reflection object到inte***ce value

go語言的反射和物理中的反射一樣,也支援逆轉換的返回。可以根據給定的reflect.value恢復inte***ce

type myint int

var x myint =

7v := reflect.

valueof

(x)fmt.

println

(v.inte***ce()

)

修改reflection object的條件,傳入的值入的值必須是可以支援修改源值的

不可修改

var x float64

=3.4

v := reflect.

valueof

(x)fmt.

println

("settability of v:"

, v.

canset()

)//settability of v: false

可以修改

var x float64

=3.4

p := reflect.

valueof

(&x)

// 注意: 這裡是x的位址.

v := p.

elem()

fmt.

println

("settability of v:"

, v.

canset()

)//settability of v: true

v.setfloat

(7.1

)fmt.

println

(v.inte***ce()

)fmt.

println

(x)

IT界三大定律

1.摩爾定律 最早是由英特爾公司創始人戈登 摩爾 gordon moore 博士提出。摩爾定律的主要內容是 每18個月計算機等it產品的效能會翻一番 或者說相同的效能的計算機等it產品,每18個月價錢會降一半。2.安迪 比爾定律 即比爾要拿走安迪所給的 what andy gives,bill ta...

IT世界三大定律

摩爾定律是由英特爾 intel 創始人之一戈登 摩爾 gordon moore 提出來的。其內容為 當 不變時,積體電路上可容納的電晶體數目,約每隔18個月便會增加一倍,效能也將提公升一倍。換言之,每一美元所能買到的電腦效能,將每隔18個月翻兩倍以上。這一定律揭示了資訊科技進步的速度。反摩爾定律是g...

電腦科學三大定律和網路三大定律

電腦科學三大定律 一 摩爾定律 摩爾定律是由英特爾 intel 創始人之一戈登 摩爾 gordon moore 提出來的。其內容為 當 不變時,積體電路上可容納的元器件的數目,約每隔18 24個月便會增加一倍,效能也將提公升一倍。換言之,每一美元所能買到的電腦效能,將每隔18 24個月翻一倍以上。這...