본문 바로가기
728x90
반응형

Rust16

Rust 설치부터 실행까지 (소유권) - 8 오늘은 Rust의 소유권에 대해 알아보고자 합니다.소유권소유권(ownershipt)는 rust에서 가장 독특한 기능이며, 언어 전반에 깊은 영향을 끼칩니다. 소유권은 가비지 컬렉터(GC : Garbage Collector)없이 메모리 안전성을 보장하도록 해주므로, 소유권이 어떻게 동작하는지를 이해하는 것은 중요합니다. 몇몇 언어(JAVA, Golang 등)는 가비지 컬렉션으로 프로그램에서 더 이상 사용하지 않는 메모리르 정기적으로 찾는 방법을 채택했고, 다른 언어(C, C++ 등)는 프로그래머가 직접 명시적으로 메모리를 할당하고 해제하는 방식을 채택했습니다. rust는 소유권(ownership)이라는 시스템을 만들고, 컴파일러가 컴파일 중에 검사할 여러 규칙을 정해 메모릴 관리하는 방식을 채택했습니다. .. 2025. 1. 2.
Rust 설치부터 실행까지 (주석, 조건 반복문) - 7 오늘은 Rust의 주석과 조건 반복문에 대해 알아보고자 합니다.주석rust의 주석은 Python의 # 과 달리 C++, JAVA와 동일하게 // 으로 구성되어 있습니다.제어 흐룸문rust에서 실행 흐름을 제어하도록 해주는 일반적인 방법은 if표현식과 반복문 입니다.if 표현식rust에서의 if문은 다음과 같이 사용할 수 있습니다.fn main() { let number = 3; if number rust는 c++과 다르게 if문의 타입이 bool이여야 합니다.fn main() { let number = 3; if number { println!("number was three"); }}다음과 같이 실행시, 에러가 발생합니다.Compiling branches v0.1.. 2024. 12. 30.
Rust 설치부터 실행까지 (함수, 구문, 표현식) - 6 오늘은 Rust의 함수(function)에 대해 알아보고자 합니다.함수rust에서는 함수를 fn 키워드를 통해서 선언할 수 있습니다. 지금까지 사용했던 main도 마찬가지 입니다. rust는 함수나 변수 이름을 스네이크 케이스(snake case) 방식을 주로 이용하는데, 이는 모든 글자를 소문자로 쓰고 밑줄(underscore)로 단어를 구분하는 방식을 이야기합니다.fn main() { println!("Hello, world!"); another_function();}fn another_function() { println!("Another function.");}rust는 c언어와는 다르게 함수를 호출하는 위치를 고려하지 않으며, 호출하는 쪽에서 볼 수 있는 스코프 어딘가에 정의만 .. 2024. 12. 28.
Rust 설치부터 실행까지 (데이터 타입, 튜플, 어레이) - 5 오늘은 Rust의 데이터타입에 대해 알아보고자 합니다.타 언어JAVA의 경우 데이터 타입으로 int, long, double이 존재합니다. C++의 경우 데이터 탕입으로 int, long long, long double 등 다양한 타입이 존재합니다.정적 타입Rust는 정적 타입의 언어로, 모든 변수의 타입이 컴파일 시점에 정해져 있어야 합니다. 다음과 같이 "42"라는 문자열을 정수형으로 변환하고자 할 때, u32라는 타입으로 지정해줍니다.let guess: u32 = "42".parse().expect("Not a number!");만약 u32 타입을 지정하지 않은 경우 다음과 같이 error가 발생합니다.help: consider giving `guess` an explicit type스칼라 타입Ru.. 2024. 12. 28.
728x90
반응형