小编Tsu*_*oto的帖子

在Haskell中解释类型类

我是一名C++/Java程序员,我在日常编程中使用的主要范例是OOP.在某些线程中,我读到了一个注释,Type类本质上比OOP更直观.有人能用简单的单词解释类型类的概念,这样像我这样的OOP人能理解吗?

c++ java oop haskell functional-programming

9
推荐指数
4
解决办法
2175
查看次数

向C++程序员解释ML类型推断

ML如何在以下函数定义中执行类型推断:

let add a b = a + b
Run Code Online (Sandbox Code Playgroud)

它是否像C++模板一样,在模板实例化之前不执行类型检查,如果类型支持必要的操作,函数可以工作,否则会抛出编译错误?

即,例如,以下功能模板

template <typename NumType>
NumType add(NumType a, NumType b) {
  return a + b;
}
Run Code Online (Sandbox Code Playgroud)

会为...工作

add<int>(23, 11);
Run Code Online (Sandbox Code Playgroud)

但不会起作用

add<ostream>(cout, fout);
Run Code Online (Sandbox Code Playgroud)

我猜的是正确的还是ML类型的推理工作方式不同?

PS:抱歉我的英语不好; 这不是我的母语.

c++ templates functional-programming type-inference ml

5
推荐指数
2
解决办法
1492
查看次数