CustomStringConvertible πŸ“™

YaR LabΒ·2023λ…„ 8μ›” 22일
0

swiftΒ πŸ“™

λͺ©λ‘ 보기
10/16
post-thumbnail

1️⃣ μ •μ˜

μ‚¬μš©μž μ •μ˜λœ ν…μŠ€νŠΈ ν‘œν˜„μ„ κ°€μ§€κ²Œ ν•˜λŠ” ν”„λ‘œν† μ½œ

protocol CustomStringConvertible

2️⃣ μ„€λͺ…

  • CustomStringConvertible ν”„λ‘œν† μ½œμ„ μ€€μˆ˜ν•˜λŠ” νƒ€μž…μ€ ν•΄λ‹Ή μΈμŠ€ν„΄μŠ€λ₯Ό λ¬Έμžμ—΄λ‘œ λ³€ν™˜ν•  λ•Œ μ‚¬μš©ν•  자체 ν‘œν˜„μ„ μ œκ³΅ν•  수 있음
  • String(describing:) μ΄ˆκΈ°ν™”μžλŠ” λͺ¨λ“  νƒ€μž…μ˜ μΈμŠ€ν„΄μŠ€λ₯Ό λ¬Έμžμ—΄λ‘œ λ³€ν™˜ν•˜λŠ” μ„ ν˜Έλ˜λŠ” 방법
  • μ „λ‹¬λœ μΈμŠ€ν„΄μŠ€κ°€ CustomStringConvertible을 μ€€μˆ˜ν•˜λ©΄ String(describing:) μ΄ˆκΈ°ν™”μžμ™€ print(_:) ν•¨μˆ˜λŠ” ν•΄λ‹Ή μΈμŠ€ν„΄μŠ€μ˜ μ‚¬μš©μž μ •μ˜ μ„€λͺ… 속성을 μ‚¬μš©ν•¨
  • νƒ€μž…μ˜ μ„€λͺ… 속성에 직접 μ•‘μ„ΈμŠ€ν•˜κ±°λ‚˜ Generic μ œμ•½ 쑰건으둜 CustomStringConvertible을 μ‚¬μš©ν•˜λŠ” 것은 ꢌμž₯λ˜μ§€ μ•ŠμŒ ❌

πŸ“Œ Conforming to the CustomStringConvertible Protocol

  • μ‚¬μš©μž μ •μ˜ νƒ€μž…μ— CustomStringConvertible ν”„λ‘œν† μ½œμ„ μ€€μˆ˜ν•˜λ„λ‘ ν•˜λ €λ©΄ description ν”„λ‘œνΌν‹°λ₯Ό μ •μ˜ν•˜λ©΄ 됨
  • description ν”„λ‘œνΌν‹°λ₯Ό μ •μ˜ν•˜κ³  CustomStringConvertible 채택 ν•˜λ©΄ 자체 μ‚¬μš©μž μ •μ˜ ν‘œν˜„μ„ μ œκ³΅ν•¨

μΆœμ²˜πŸ“š

🍎Apple Docs: CustomStringConvertible

0개의 λŒ“κΈ€