erlang - 函数名与内核模块中的函数冲突。有没有办法先调用自己的函数?
问题描述
例如,div/2
是Kernel
模块中的现有函数。我想调用我自己的div/2
函数而不是Kernel.div/2
函数。
解决方案
您可以Kernel
通过显式导入Kernel
和排除您不想要的函数来取消导入函数except
:
defmodule A do
import Kernel, except: [div: 2]
def div(a, b), do: a * b
def do_div, do: div(3, 4)
end
IO.inspect A.do_div()
输出:
12
推荐阅读
- rust - 参数位置中的 dyn Trait 是什么意思?
- android - 是否可以在 Firestore 中将 POJO 对象转换为 DocumentSnapshot?
- c# - 仅在 ISE 中运行的 Powershell 脚本
- c# - CSharpMath.Forms 在 Windows 应用程序中如何使用?
- mule - 将 Mule 3.6 表达式组件迁移到 DataWeave 2.0 的问题
- spring-boot - Spring Boot:检查给定字符串在数据库中是否唯一
- google-apps-script - 电子表格应用程序现在可以正常工作了(从昨晚到今天早上没有任何变化
- ffmpeg - FFMPEG 流未显示在 Youtube 仪表板中
- angular - 如何使用 Jasmine 处理对 Angular 单元测试的依赖注入?
- php - PHP说文件不存在