小编int*_*tar的帖子

在其他数据类型中使用定义的数据类型

继我的问题之后: 如何将可选属性附加到值?

我正在尝试定义音乐的Haskell表示.

我想做点什么:

data Chord = Chord Int Modality [Annotate] deriving (Eq, Show, Read)
Run Code Online (Sandbox Code Playgroud)

据我所知定义了一种新的和弦类型.

然后我希望能够将其他事件中的和弦添加到分数中

data Event = Note Int | Chord Int Modality [Annotate] | Rest
Run Code Online (Sandbox Code Playgroud)

但是,编译器说我正在尝试两次定义Chord.

那么,有没有办法在新的数据类型定义中使用先前定义的数据类型?我正在做的事情看起来或多或少像经典的树定义:

data Tree a = EmptyTree | Node a (Tree a) (Tree a) deriving (Show, Read, Eq)  
Run Code Online (Sandbox Code Playgroud)

哪个工作正常.那么为什么在这个例子中使用"Tree"是可以的,而不是在我的"Chord"中呢?

haskell types

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

我不打印时在Java中格式化字符串

当我不打印时,如何在Java中格式化字符串?

例如.在Python中我可以做到:

s = "%f" % f
Run Code Online (Sandbox Code Playgroud)

我在网上看到的所有Java示例都使用printf或一些流.如何在内部创建格式化字符串?

java string-formatting

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

如何在 C++ 中从中获取参考

我有一个类,其对象必须将对自身的引用传递给另一个函数。

我发现这this是一个指针,而不是引用。那么如何获取我所在对象的引用呢?

c++ reference

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

从哪里可以导入Clojure的IPersistentCollection协议

我目前尝试过clojure.lang和clojure.core.

我也用Google搜索过.但我找不到它的定义.

clojure

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

Meteor(js框架):如何从浏览器上的事件调用服务器上的函数?

我刚刚开始学习流星.我想在客户端上有一个按钮来启动服务器端功能.我该怎么做?

javascript browser meteor

-3
推荐指数
1
解决办法
849
查看次数