Swift 4의 경우 ++
및 --
연산자를 확장명 Int
및 기타 유형 으로 복원 할 수 있습니다. 예를 들면 다음과 같습니다.
extension Int{
static prefix func ++(x: inout Int) -> Int {
x += 1
return x
}
static postfix func ++(x: inout Int) -> Int {
defer {x += 1}
return x
}
static prefix func --(x: inout Int) -> Int {
x -= 1
return x
}
static postfix func --(x: inout Int) -> Int {
defer {x -= 1}
return x
}
}
그것은과 같은 다른 유형에 대해 동일한 방식으로 작동 UIInt
, Int8
, Float
, Double
, 등
이 확장명을 루트 디렉토리의 단일 파일에 붙여 넣을 수 있으며, 다른 모든 파일에서 사용할 수 있습니다.
나는 내가 게시하자마자 여기에 내 대답에 대한 두 개의 투표를 보았습니다. 내 코드가 어떻게 작동하는지에 대한 비판보다는 철학적 의견 불일치로 생각합니다. 운동장에서 체크 아웃하면 완벽하게 작동합니다.
이 답변을 게시 한 이유는 컴퓨터 프로그래밍 언어를 불필요하게 다르게 만드는 데 동의하지 않기 때문입니다.
언어간에 많은 유사점이 있으면 사람들이 한 언어에서 다른 언어로 쉽게 배우고 전환 할 수 있습니다.
개발자는 보통 하나 이상의 프로그래밍 언어가 아닌 여러 프로그래밍 언어를 사용합니다. 언어간에 규칙이없고 일반적인 표준화가없는 경우 한 언어에서 다른 언어로 전환하는 것은 매우 번거로운 일입니다.
언어 사이에는 구문 차이가 있어야하며 그 이상은 필요하지 않다고 생각합니다.