- Perl 6 Deep Dive
- Andrew Shitov
- 417字
- 2021-07-03 00:05:55
Categories of operators
In the previous section, we saw an example of the + operator, which takes two arguments. There are many other operators that are similar to +. For example, * is the operator for multiplication. Like the + operator, the * operator takes two arguments and returns a value.
my $c = $a * $b;
This kind of operator is called an infix operator, or simply infix. The operands of such operators are often called the left-hand side and right-hand side operands. As the operators take two arguments, they are also often called binary operators.
Another kind of operator needs only one argument. These operators are called unary operators. A typical example of a unary operator is unary minus. In the following example, this operator negates the value of its argument:
my $a = 10;
my $b = -$a;
say $b; # prints -10
Notice that this operator uses the same character as the binary minus operator, but both the programmer and the compiler can distinguish between the two:
my $a = 10;
my $b = -$a; # unary minus, $b becomes -10
my $c = $a - $b; # binary subtraction, $c is 20
Different unary operators can be placed either before the argument or after it. For example, the ++ operator has two forms—prefix and postfix. The following example demonstrates the two alternatives:
my $a = 10;
++$a; # prefix operator ++
$a++; # postfix operator ++
The position of an operator (it is either placed before or after an argument) changes its meaning.
So far, we've met infix, prefix, and postfix operators. There are two more categories of operators in Perl 6.
Circumfix operators are another kind of unary operators. Unlike operators like unary -, circumfix operators consist of two complementary parts, such as parentheses. The only operand of a circumfix operator is placed between them, for example—the [$a] construction uses the [] circumfix operator that takes $a as an argument.
Finally, there are postcircumfix operators. They need two operands, and the syntax is the following—operand1[operand2]. One of the most practical examples of the postcircumfix operator is the function call. We've seen it a few times already—add($a, $b).
Let's summarize the operator categories in the following table using the + operator symbol as an example:
- 微服務(wù)設(shè)計(jì)(第2版)
- Apache Hive Essentials
- C語言程序設(shè)計(jì)實(shí)訓(xùn)教程
- QTP自動(dòng)化測(cè)試進(jìn)階
- Lighttpd源碼分析
- C#面向?qū)ο蟪绦蛟O(shè)計(jì)(第2版)
- Web編程基礎(chǔ):HTML5、CSS3、JavaScript(第2版)
- UML基礎(chǔ)與Rose建模實(shí)用教程(第三版)
- 和孩子一起學(xué)編程:用Scratch玩Minecraft我的世界
- Hadoop Blueprints
- Android開發(fā)進(jìn)階實(shí)戰(zhàn):拓展與提升
- Flutter從0基礎(chǔ)到App上線
- JavaScript全棧開發(fā)
- TensorFlow程序設(shè)計(jì)
- 移動(dòng)智能系統(tǒng)測(cè)試原理與實(shí)踐