草庐IT

somePoint

全部标签

go - 循环包含 map[int]*somepointer 的 interface{}

我必须处理大量带有int键的映射,这些键包含指向不同数据类型的指针。我需要一个函数(而不是每种map类型10个函数)来遍历这些map并获取最大和最小键值。 最佳答案 使用reflect包对具有整数键和任意值类型的映射进行操作:funcgetMaxKey(inoutinterface{})int{keys:=reflect.ValueOf(inout).MapKeys()iflen(keys)==0{return0}max:=keys[0].Int()for_,key:=rangekeys[1:]{n:=key.Int()ifn>ma

c++ - "Adapter"为成员变量

通常,适配器的目的是以修改后的格式进行函数调用。有没有办法对成员变量做同样的事情?也就是说,假设我有一个包含SomePoint的对象和另一个包含DifferentPoint的对象。SomePoint将其数据存储为大写的成员变量X和Y其中AnotherPoint将其数据存储为小写的成员变量x和x。所以问题是你不能写一个接受SomePoint或DifferentPoint的函数,因为你不能访问.x或.X(即使使用模板而不完全专门针对每个不同的点类型,在这种情况下,您也可以只重载点类型)。问题是有没有一种方法可以让适配器在请求.x时为SomePoint生成.X?这两种点类型都是库类,所以我不