Skip to Content
이펙티브 러스트
book

이펙티브 러스트

by 데이비드 드라이스데일, 남기혁
October 2024
Beginner to intermediate
344 pages
7h 44m
Korean
Hanbit Media, Inc.
Content preview from 이펙티브 러스트
217
3
주요 개념
is::<T>()
: 트레이트 객체 타입이 특정 타입
T
와 같은지 여부를 나타낸다.
downcast_ref::<T>()
: 트레이트 객체가
T
타입이라면, 구체적인 타입
T
에 대한 레퍼런스를 반환한다.
downcast_mut::<T>()
: 트레이트 객체가
T
타입이라면, 구체적인 타입
T
에 대한 가변 레퍼런스를 반
환한다.
Any
트레이트는 어디까지나 리플렉션과 비슷할 뿐이다. 어떤 객체의 컴파일 타임 타입과 위치
를 추적하는 대상 (
&
dyn
Any
)을 명시적으로 빌드할지 여부를 컴파일 타임에 프로그래머가 선
택해야 한다. 본래 타입으로 되돌리는 다운캐스팅
downcasting
같은 기능은
Any
트레이트 객체를
빌드한 경우에만 가능하다.
러스트에서는 객체의 컴파일 타임 타입과 런타임 타입이 다른 경우가 드물다. 그중에서도 특히
트레이트 객체가 그렇다. 구체적인 타입이
Square
인 객체는 그 타입이 구현하는 트레이트에
대해 트레이트 객체인
dyn
Shape
으로 강제 변환될 수 있다. 그러면 객체만 가리키던 단순 포
인터로부터 객체와
vtable
로 구성된 팻 포인터가 만들어진다.
아이템
12
에서 설명한 것처럼 러스트의 트레이트 객체는 객체 지향적이지 않다.
Square
Shape
의 한 종류, 즉
is
-
a
관계가 아니다.
Square ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

이펙티브 타입스크립트

이펙티브 타입스크립트

Dan Vanderkam
파이썬으로 살펴보는 아키텍처 패턴

파이썬으로 살펴보는 아키텍처 패턴

오현석, 해리 퍼시벌, 밥 그레고리

Publisher Resources

ISBN: 9791169212946