Rust

[Rust] 6. 구조체와 열거형

comnic 2023. 12. 5. 19:57
반응형

6. 구조체와 열거형

 

6.1 구조체(Struct)와 멤버

구조체(Struct)는 서로 다른 데이터 타입을 포함하는 사용자 정의 데이터 타입입니다. 구조체를 사용하여 여러 변수를 묶어서 하나의 논리적 단위로 표현할 수 있습니다. 각 변수는 멤버(member)라고 불리며, 멤버는 서로 다른 데이터 타입일 수 있습니다.

// 구조체 정의
struct Point {
    var x: Int
    var y: Int
}

// 구조체 인스턴스 생성
var myPoint = Point(x: 10, y: 20)

// 멤버에 접근
print("X 좌표: \(myPoint.x), Y 좌표: \(myPoint.y)")

위의 예제에서 Point는 x와 y라는 두 개의 멤버를 가진 구조체입니다. 구조체를 사용하여 myPoint 변수를 만들고, 멤버에 접근하여 값을 출력할 수 있습니다.

 

 

6.2 열거형(Enum)과 패턴 매칭

열거형(Enum)은 연관된 값을 가진 다양한 타입을 정의할 수 있는 강력한 도구입니다. Rust의 열거형은 패턴 매칭과 함께 사용되어 각각의 경우에 대한 처리를 할 수 있습니다.

// 열거형 정의
enum CompassPoint {
    North,
    South,
    East,
    West,
}

// 열거형 인스턴스 생성
let direction = CompassPoint::East;

// 패턴 매칭
match direction {
    CompassPoint::North => println!("북쪽"),
    CompassPoint::South => println!("남쪽"),
    CompassPoint::East => println!("동쪽"),
    CompassPoint::West => println!("서쪽"),
}

위의 예제에서 CompassPoint는 네 개의 경우를 가진 열거형입니다. match 키워드를 사용하여 각 경우에 대해 처리하고 출력합니다. 열거형은 각 case마다 연관된 데이터를 가질 수 있으며, 이를 활용하여 다양한 유형의 데이터를 나타낼 수 있습니다.

이러한 구조체와 열거형은 Rust에서 안전하고 효율적인 코드를 작성하는 데 도움이 되는 핵심 개념입니다. 

반응형