본문 바로가기
 

하나성경

읽기 쉬운 성경, 하나성경을 소개합니다.

www.hbible.co.kr

컴퓨터에서는

[ Rust ] 초급 문법 : 15. 옵션 타입 (Option<T>) – 값이 있을 수도 있고 없을 수도 있는 타입

by 컴 여행자 2025. 5. 10.
728x90
반응형

 

러스트
러스트

 

 

 

초급 문법 : 15. 옵션 타입 (Option<T>) – 값이 있을 수도 있고 없을 수도 있는 타입

 


🌱 1단계: Option<T>란 무엇인가요?

Rust에서 어떤 값이 있을 수도 있고, 없을 수도 있는 경우에 Option<T>라는 타입을 사용합니다.

  • Some(value) : 값이 있는 경우
  • None : 값이 없는 경우

T는 "어떤 타입이든 가능하다"는 뜻입니다. 예를 들어:

  • Option<i32> : i32 정수형일 수도 있고 아닐 수도 있음
  • Option<String> : 문자열일 수도 있고 아닐 수도 있음

📦 예를 들면, 누군가에게 "나이를 알고 있나요?"라고 물어봤을 때

  • "30살입니다" → Some(30)
  • "모릅니다" → None

🧑‍💻 2단계: 간단한 코드 예제

예제 목표

나이를 Option<i32>로 저장하고, 값이 있을 때만 출력해봅니다.

 

📁 VS Code에서 코드 작성 방법

코드를 작성하고 실행해 봅시다.

 

VS Code에서 Rust 파일 생성

 

1️⃣ 터미널 열기

  • VS Code를 실행하고, Ctrl + ~ (물결표) 키를 눌러 터미널을 엽니다.
  • 또는 메뉴에서 [터미널] → [새 터미널] 선택하세요.
  • 터미널이 이미 열려 있으면, 열려 있는 터미널을 이용하세요.

2️⃣ 새 Rust 프로젝트 생성

  • 새로운 Rust 프로젝트를 만들 폴더로 이동 (예: C:\RustProjects)
cd C:\RustProjects

 

  • 터미널에 아래 명령을 입력하고 Enter 키를 누릅니다.
  • rust_option 이라는 폴더가 생성됩니다.
cargo new rust_option

 

 

3️⃣ 프로젝트 열기

  • VS Code에서 [파일] → [폴더 열기] 선택 후 rust_option 폴더를 엽니다.

4️⃣ 메인 파일 열기

  • 왼쪽 src 폴더에서 main.rs 파일을 클릭하여 엽니다.

 


✨ main.rs 예제 코드

fn main() {
    let age: Option<i32> = Some(30); // Some 값이 있는 경우
    let no_age: Option<i32> = None;  // None 값이 없는 경우

    // 첫 번째 경우: 값이 있는지 확인하고 출력
    match age {
        Some(a) => println!("Age is: {}", a),
        None => println!("No age provided"),
    }

    // 두 번째 경우: 값이 없는 경우
    match no_age {
        Some(a) => println!("Age is: {}", a),
        None => println!("No age provided"),
    }
}

 


🧪 3단계: 실행해보기

Ctrl + S 를 눌러 파일을 저장합니다. (또는 메뉴 -> 파일 -> 저장)

Ctrl + ~ (물결표) 키를 눌러 터미널을 엽니다.

 

터미널에서 아래 명령어를 입력하세요.

cargo run

 

🖥️ 결과:

Age is: 30
No age provided

 


🧠 4단계: 설명

 

코드 설명
let age: Option<i32> = Some(30); 30이라는 값을 가진 Option 타입
let no_age: Option<i32> = None; 값이 없음 (None)
match age Option 안에 값이 있는지 검사함
Some(a) 값이 있으면 a에 저장해서 사용
None 값이 없으면 이 코드 실행

✅ 정리

  • Option<T>는 값이 있을 수도 있고, 없을 수도 있는 경우 사용합니다.
  • Some(value)는 값이 있음, None은 값이 없음입니다.
  • match를 사용해서 Option을 검사합니다.

 

이상을 option에 대해 알아보았습니다.

 

 


 

러스트 프로그래밍 언어 관련 글 목록입니다.

 

[ Rust ] 러스트 프로그래밍 언어 관련 글 목록입니다.

러스트 컴퓨터 프로그래밍 언어를 아이들에게 알려주기 위해 글을 작성하고 있습니다.가능한 쉽고 자세하게 그리고 잘 따라할 수 있도록 작성해 보려고 합니다.글이 작성되는 대로 계속 추가하

hb-love-each-other.tistory.com

 

 


 

https://rust-kr.org/

 

한국 러스트 사용자 그룹

 

rust-kr.org

 

https://www.rust-lang.org/

 

Rust Programming Language

A language empowering everyone to build reliable and efficient software.

www.rust-lang.org

 

 

728x90
반응형

댓글