小编Buf*_*lls的帖子

GoLang,"hash.Write","write()"函数来自哪里?

func hash(s string) uint32 {
    h := fnv.New32a()
    h.Write([]byte(s))
    return h.Sum32()
}
Run Code Online (Sandbox Code Playgroud)

对于这段代码.我明白什么类型是h.这是哈希.但是对于Hash类型,我没有看到任何Write()方法.http://golang.org/pkg/hash/ 这是什么写的()?

谢谢

go

2
推荐指数
1
解决办法
785
查看次数

具有领先"类型***"的golang功能

type ApplyFunc func(commitIndex uint64, cmd []byte) []byte
Run Code Online (Sandbox Code Playgroud)

对于这个声明.我的理解是,这是一个函数指针.它的名字是ApplyFunc.此函数将commitIndex和cmd作为输入.它返回[]字节.

我的理解是对的吗?谢谢!

go

2
推荐指数
1
解决办法
463
查看次数

在Scala中为内部定义的集实现映射

  type Set = Int => Boolean

  /**
   * Returns whether all bounded integers within `s` satisfy `p`.
   */
  def forall(s: Set, p: Int => Boolean): Boolean = {
    def iter(a: Int): Boolean = {
      if (a > bound) true
      else if (contains(s, a) && !p(a)) false
      else iter(a + 1)
    }
    iter(-bound)
  }

  /**
   * Returns whether there exists a bounded integer within `s`
   * that satisfies `p`.
   */
  def exists(s: Set, p: Int => Boolean): Boolean = !forall(s, (x …
Run Code Online (Sandbox Code Playgroud)

scala

2
推荐指数
1
解决办法
1681
查看次数

clojure map,什么是%2和%1

我正在做一个clojure excersice,这是一个问题.

(true?  (__ :a {:a nil :b 2}))
Run Code Online (Sandbox Code Playgroud)

答案是 :

 #(nil?(%2 %1 0))
Run Code Online (Sandbox Code Playgroud)

但我无法得到它.%2%1 0在这做什么?特别是,0那里有什么?

你能帮我解释一下吗?谢谢

functional-programming clojure

2
推荐指数
1
解决办法
176
查看次数

C++是静态类型语言,为什么我们可以在运行时获取类型

TYPE& dynamic_cast<TYPE&> (object);
TYPE* dynamic_cast<TYPE*> (object);
Run Code Online (Sandbox Code Playgroud)

例如,我们可以得到这样的类型.C++是静态类型语言,为什么我们可以在运行时获取类型

c++ types static-typing

1
推荐指数
1
解决办法
198
查看次数

Haskell,打印出fmap结果

我想像这样打印fmap的结果

 putStrLn <- fmap (replicate 3) [1,2,3,4]
Run Code Online (Sandbox Code Playgroud)

但是我得到了putStrLn解析错误.请帮忙.

谢谢.

haskell

1
推荐指数
2
解决办法
147
查看次数

在C中,"静态字符"类型的默认值是什么

例如

static char all_data;
Run Code Online (Sandbox Code Playgroud)

没有初始化它的价值.什么是默认值?或者它是未定义的行为?

我尝试了我的gcc-4.6,答案是0.

谢谢.

c

1
推荐指数
1
解决办法
1858
查看次数

删除lisp中列表中的重复列表

如何删除common-lisp中列表中的重复列表?我试过这个:

(remove-duplicates '( (1 2 3) (1 2 3)))                           
Run Code Online (Sandbox Code Playgroud)

但它评估的 ((1 2 3) (1 2 3))不是((1 2 3)).

谢谢.

lisp common-lisp

1
推荐指数
1
解决办法
558
查看次数

去频道,似乎没事,但它会陷入僵局

package main
import "fmt"
import "time"

func main() {
     c := make(chan int)
     c <- 42    // write to a channel

     val := <-c // read from a channel
     println(val)
}
Run Code Online (Sandbox Code Playgroud)

我认为c <- 42 把42放到通道c,然后 val := <-c将值c放到val中.但为什么会陷入僵局?

synchronization channel go

1
推荐指数
1
解决办法
65
查看次数

go channel将空结构作为输入.这个输入可以是什么?

a:= make(chan struct {})

这样,go channel将空结构作为输入.这个输入可以是什么?

谢谢.

go

1
推荐指数
1
解决办法
250
查看次数