chi*_*k10 3 haskell compiler-warnings
我将我的数据类型声明为类的实例,Num并仅实现方法和(+).其他的方法,如(*),negate,abs,fromInteger等我不落实.原因是我的数据类型不需要这些方法.
我编译程序,除了一些不舒服的警告之外没关系,例如:
Warning: No explicit method nor default method for `*'
...
Run Code Online (Sandbox Code Playgroud)
如何避免这些警告,或者我是否需要实施上述方法?实际上,我不想实现它们.
您可以使用命令行标志(在GHC中)使这些警告静音
ghc -fno-warn-missing-methods YourFile.hs
Run Code Online (Sandbox Code Playgroud)
但是如果你只想实现添加,那么将你的类型作为实例可能是不合适的Num.如果你只想不具有对类型的操作一个不错的操作,你可以定义你自己的,你甚至可以重复使用(+),如果你
import Prelude hiding ((+))
import qualified Prelude -- so that (+) can be still used in qualified form
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1017 次 |
| 最近记录: |