태그: 소유권
6편
-
Rust를 컴파일러 관점에서 보기: 소유권·라이프타임 추론·트레이트 해석·제로 코스트 추상화
Rust 컴파일러가 NLL과 MIR 위에서 빌림을 검사하는 방식, 라이프타임 제약과 생략 규칙·분산·HRTB, 단조화와 dyn Trait vtable, 고아 규칙과 트레이트 해석, thiserror·anyhow·tracing을 쓰는 프로덕션 패턴을 설명합니다.
-
Rust 소유권 에러 디버깅 사례: cannot move out·cannot borrow as mutable·lifetime 에러 해결
cannot move out of borrowed content, cannot borrow as mutable more than once, lifetime may not live long enough 같은 Rust 소유권 에러를 문제 코드와 에러 메시지로 재현하고, 원인과 해결 코드를 사례별로 보여 줍니다.
-
Rust String vs &str: 소유권 차이와 함수 인자로 무엇을 받을지
Rust String과 &str이 메모리에 어떻게 놓이는지, 함수 매개변수·구조체 필드·반환값에서 어느 쪽을 써야 하는지, 불필요한 to_string()과 &str 반환 시 수명 문제 같은 흔한 실수를 예제로 비교합니다.
-
Rust 소유권 | Ownership, Borrowing, Lifetime
Rust 소유권 세 가지 규칙, 함수 호출 시 소유권 이동과 반환, 불변 참조와 가변 참조의 빌림 규칙, 슬라이스, 함수·구조체의 라이프타임 애노테이션을 문자열 처리 예제로 설명하고 &String 대신 &str을 받는 이유를 짚습니다.
-
C++ vs Rust: 소유권, 메모리 안전성, 에러 처리, 동시성, 성능 비교
use-after-free 크래시나 borrow checker에 막혀 개발이 느려지는 상황처럼 C++와 Rust 사이에서 고민할 때 필요한 비교를 코드로 보여줍니다. 이동 의미의 차이, 댕글링과 null 안전성, 예외·expected와 Result, Send·Sync 기반 동시성을 다룹니다.
-
C++ 개발자가 보는 Rust 메모리 안전성: 소유권, Borrow Checker, 수명, unsafe 경계
버퍼를 넘긴 뒤 다시 쓰거나 로컬 포인터를 반환하는 C++ 메모리 버그가 Rust에서는 왜 컴파일 단계에서 막히는지 소유권, 빌림 규칙, NLL, 수명 파라미터로 설명합니다. 스레드에 Rc를 넘기는 실수와 unsafe 경계를 어디에 둘지도 다룹니다.