# plus, +

## 语法

``C = A + B``
``C = plus(A,B)``

## 说明

``C = A + B` 通过对应元素相加将数组 `A` 和 `B` 相加。如果一个输入是字符串数组，则 `plus` 将对应的元素作为字符串追加。`A` 和 `B` 的大小必须相同或兼容。如果 `A` 和 `B` 的大小兼容，则这两个数组会隐式扩展以相互匹配。例如，如果 `A` 或 `B` 中的一个是标量，则该标量与另一个数组的每个元素相结合。此外，具有不同方向的向量（一个为行向量，另一个为列向量）会隐式扩展以形成矩阵。`
``C = plus(A,B)` 是执行 `A + B` 的替代方法，但很少使用。它可以启用类的运算符重载。`

## 示例

```A = [0 1; 1 0]; C = A + 2```
```C = 2×2 2 3 3 2 ```

`A` 的每个项都加上了标量值。

`s1 = ["Red" "Blue" "Green"]`
```s1 = 1x3 string "Red" "Blue" "Green" ```
`s2 = ["Truck" "Sky" "Tree"]`
```s2 = 1x3 string "Truck" "Sky" "Tree" ```
`s = s1 + s2`
```s = 1x3 string "RedTruck" "BlueSky" "GreenTree" ```

```A = [1 0; 2 4]; B = [5 9; 2 1]; C = A + B```
```C = 2×2 6 9 4 5 ```

`A` 的元素加到了 `B` 的对应元素上。

```a = 1:2; b = (1:3)'; a + b```
```ans = 3×2 2 3 3 4 4 5 ```

`$\mathit{a}=\left[{\mathit{a}}_{1}\text{\hspace{0.17em}}{\mathit{a}}_{2}\right],\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\mathit{b}=\left[\begin{array}{c}{\mathit{b}}_{1}\\ {\mathit{b}}_{2}\\ {\mathit{b}}_{3}\end{array}\right],\text{\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}}\text{\hspace{0.17em}}\mathit{a}+\text{\hspace{0.17em}}\mathit{b}=\left[\begin{array}{cc}{\mathit{a}}_{1}+\text{\hspace{0.17em}}{\mathit{b}}_{1}& {\mathit{a}}_{2}+\text{\hspace{0.17em}}{\mathit{b}}_{1}\\ {\mathit{a}}_{1}+\text{\hspace{0.17em}}{\mathit{b}}_{2}& {\mathit{a}}_{2}+\text{\hspace{0.17em}}{\mathit{b}}_{2}\\ {\mathit{a}}_{1}+\text{\hspace{0.17em}}{\mathit{b}}_{3}& {\mathit{a}}_{2}+\text{\hspace{0.17em}}{\mathit{b}}_{3}\end{array}\right].$`

`A = [1 2 3; 4 5 6]`
```A = 2×3 1 2 3 4 5 6 ```
`b = [10; 100]`
```b = 2×1 10 100 ```
`A + b`
```ans = 2×3 11 12 13 104 105 106 ```

`A = table([1;2],[3;4],VariableNames=["V1","V2"],RowNames=["R1","R2"])`
```A=2×2 table V1 V2 __ __ R1 1 3 R2 2 4 ```
`B = table([4;2],[3;1],VariableNames=["V2","V1"],RowNames=["R2","R1"])`
```B=2×2 table V2 V1 __ __ R2 4 3 R1 2 1 ```
`C = A + B`
```C=2×2 table V1 V2 __ __ R1 2 5 R2 5 8 ```

## 输入参数

• 如果一个输入是字符串数组，则另一个输入可以是数值、字符、字符串或元胞数组。在这种情况下，`plus` 将非字符串输入转换为字符串数组，然后追加输入的对应元素。

• 整数数据类型的操作数不能为复数。

• 如果一个输入为 `datetime` 数组、`duration` 数组或 `calendarDuration` 数组，则另一个输入中的数值将被视为一个 24 小时天的天数。

• 如果输入是表或时间表，则其所有变量都必须有支持该运算的数据类型。

• 如果只有一个输入是表或时间表，则另一个输入必须为数值或逻辑数组。

• 如果两个输入均为表或时间表，则：

• 两个输入必须具有相同的大小，或其中一个必须为单行表。

• 两个输入必须有相同名称的变量。但是，每个输入中的变量可以有不同的顺序。

• 如果两个输入均为表，并且都有行名称，则其行名称必须相同。但是，每个输入中的行名称可以有不同的顺序。

• 如果两个输入均为时间表，则其行时间必须相同。但是，每个输入中的行时间可以有不同的顺序。

## 提示

• 对于追加文本，`plus` 仅作用于字符串数组。使用 `append` 函数在字符向量或元胞数组中追加文本。