많은 연산자와 함수는 서로 다른 자료형 간 연산이 가능합니다. 예를 들어,
uint8 (1) + 1 ⇒ 2
위 연산자는 8두값 정수와 배정도 값 사이에서 작동하여 8두값 정수 값을 반환합니다. 합리적이라고 볼 수도 있는 배정도로 자료형이 커지지 않고, 8두값으로 작아졌다는 점을 유의하십시오. 그 이유는 만약 위 표현식의 자료형이 커진다면, 모든 수치 상수가 아래와 같은 적절한 자료형으로의 명시적인 형 변환이 필요해져
uint8 (1) + uint8 (1) ⇒ 2
사용자의 일정한 적용과 안내 받은 벌레를 찾기가 어려워지기 때문입니다. 아래는 같은 방식이 적용된 혼성 연산 예시로
single (1) + 1 ⇒ 2
단정도 값을 반환합니다. 유효한 혼성 연산과 반환되는 자료형은 다음과 같습니다.
혼성 연산 | 결과 | ||
---|---|---|---|
배정도 대 단정도 | 단정도 | ||
배정도 대 정수 | 정수 | ||
배정도 대 문자 | 배정도 | ||
배정도 대 논리값 | 배정도 | ||
단정도 대 정수 | 정수 | ||
단정도 대 문자 | 단정도 | ||
단정도 대 논리값 | 단정도 |
같은 방식이 혼성 매개변수가 지정된 함수에도 적용되어
min (single (1), 0) ⇒ 0
단정도 값이 반환됩니다.
서로 다른 자료형 간 색인 지정의 경우에는 자료형이 변하지 않습니다. 예를 들어,
x = ones (2, 2); x(1, 1) = single (2) ⇒ x = 2 1 1 1
에서 x
는 배정도 자료형으로 유지됩니다.