评估顺序 (包括函数调用表达式中函数参数的评估顺序,以及任何表达式中子表达式的评估顺序)的任何C运算符的操作数的评估顺序是未指定的(除非在下面指出)。
模式匹配在评估函数调用时发生,case-receive-try-表达式和匹配运算符(=)表达式。 在模式匹配中,左侧pattern与右侧相匹配term。
动态内存管理 智能指针%28例如。std::shared_ptr%29,分配程序%28等。std::allocator或std::memory_resource%29,C型内存管理%28例如。
6函数 6.1函数声明语法 函数声明是由分号分隔,并且通过周期终止功能的条款的序列(.)。 一个函数子句由一个子句头和一个子句体组成,它们之间用->。
当传递给函数的参数与子句的参数模式相匹配并且其警戒值评估时,将执行特定的子句true。 在print_multiple_times/2上面的例子中最初被调用时,参数n等于3。
即,Expr2仅在以下情况下评估: Expr1false在orelse表达式中评估 Expr1评估为true一个andalso表达式。
逻辑规则保证这些评估总是正确的。请注意,上述表达式中的anything部分未被评估,因此这样做的任何副作用都不会生效。还要注意,上述表达式的anything部分是任何单个逻辑表达式(如圆括号所示)。

扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2026 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059
粤公网安备44030502008569号
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号
