Erlang函数、子句、子句保护式实例分析
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,本篇内容介绍了"Erlang函数、子句、子句保护式实例分析"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所
千家信息网最后更新 2025年02月02日Erlang函数、子句、子句保护式实例分析
本篇内容介绍了"Erlang函数、子句、子句保护式实例分析"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
函数:
%% This is a simple Erlang module% Test ...-module(helloworld).-export([pie/0, print/1]).pie() -> 3.14 .print(Msg) -> io:format("The Message is ~p.~n",[Msg]) %~p 表示以美化的方式打印Erlang项式,~n 表示插入一个换行符, ~w 表示打印Erlang字符串
函数子句:
-module(helloworld).-export([area/1, either_or_both/2]).% "_" 表示省略模式either_or_both(true, _) -> true;either_or_both(_, true) -> false;either_or_both(false, false) -> false;area({a, X, Y}) -> io:format("a, X, Y: ~p, ~p, ~p.~n", [a, X, Y]); area({b, X, Y}) -> io:format("b, X, Y: ~p, ~p, ~p.~n", [b, X, Y]). %编译:c(helloworld).%调用函数:1> helloworld:area({a, 500, 500}).a, X, Y: a, 500, 500.ok2>
注意:子句是用分好分隔且最后一个子句由句号结尾。同意函数的所有子句必须具备相同的函数名和相同的参数数量,且必须在同一处定义,不允许在同一函数的两个子句之间再插入其他函数定义。
对于either_or_both函数,如果传递的参数为either_or_both(true, 42),很显然是成立的,它只会平静地返回true,因此这就需要用到我们的保护式。
子句保护式:
-module(helloworld).-export([either_or_both/2]).either_or_both(true, B) when is_boolean(B) -> true;either_or_both(A, true) when is _boolean(A) -> false;either_or_both(false, false) -> false;
子句保护式由关键字when开始到->符号结束。能用在保护式中得操作时十分有限的,大部分运算符都可以使用(+、-、*、/、++等),部分内置函数也可以用,如:self()、 is_boolean(...)、is_integer(...)、is_atom(...)等,但你不能调用自定义的函数或其他模块中得函数。
"Erlang函数、子句、子句保护式实例分析"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
函数
子句
保护
实例
实例分析
分析
相同
内容
参数
更多
知识
实用
学有所成
接下来
两个
之间
关键
关键字
困境
大部分
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
大学数据库表达式
sql中怎么进行数据库备份
软件开发商 版权
幻塔 服务器区别
博雅数据库怎么样
杭州上海新炬网络技术有限公司
创建新的数据库表关键字是
分布式数据库系统应用
创建数据库用啥
it服务器架设
软件开发服务采购合同
数据库登录密码怎么获取
中国是首个对抗生成网络技术
股票数据软件开发
软件开发测试费用概算
洛阳乐居网络技术服务公司
怎么没看到软件开发招工
航空公司和网络安全
公司服务器连接不了电脑
2027年国家网络安全周
西安汇丰软件开发中心
数据库可以直接在表中输入记录
服务器 默认端口
计算机软件开发销售合同
成都软件开发项目经理面试题
数据库 context
北京逗游网络技术
管理多个linux服务器
广州军耀网络技术有限公司
中国电子科技集团工业互联网