TableView์˜ index๋ฅผ ์กฐ์ •ํ•˜๋ฉด์„œ NSNotFound๋ผ๋Š” ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋Š” ๊ฒƒ์„ ๋ณด๊ฒŒ๋˜์—ˆ๋‹ค. ์™œ ์ด๋Ÿฐ ๊ฒƒ์ด ํ•„์š”ํ•œ์ง€ ์•Œ์•„๋ณธ๋‹ค.

ํ•ต์‹ฌ ์ •๋ฆฌ

  • ObjectiveC์—๋Š” Optional์ด ์—†๋‹ค.
  • ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฐ์—ด ๋ฐ ๋ฌธ์ž์—ด์—์„œ ํŠน์ • index๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค์™€ ๊ฐ™์€ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•œ ๊ฐ’์ด ํ•„์š”ํ–ˆ๋˜ ๊ฒƒ

NSNotFound

  • OS X v10.5 ์ด์ „์—๋Š” 0x7fffffff์œผ๋กœ ํ• ๋‹น๋œ ๊ฐ’์ด์—ˆ๋‹ค.
  • 32๋น„ํŠธ ์‹œ์Šคํ…œ์—์„œ๋Š” NSIntegerMax์™€ ๊ฐ™์€ ๊ฐ’์ด์—ˆ๋‹ค.
  • ๊ทธ๋Ÿฐ๋ฐ 64๋น„ํŠธ ์‹œ์Šคํ…œ์„ ํ˜ธํ™˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ด์ œ๋Š” ์•„์˜ˆ NSIntegerMax ๊ฐ’๊ณผ ๋™์ผ์‹œ ์ฒ˜๋ฆฌํ•˜์˜€๋‹ค.
  • ๊ทธ๋ง์€ ์ฆ‰์Šจ, 32, 64๋น„ํŠธ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ NSNotFound์˜ ๊ฐ’์ด ๋‹ฌ๋ผ์ง„๋‹ค๋Š” ๋ง์ด๋‹ค.
  • ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์•„์นด์ด๋ธŒ๋‹ค ํŒŒ์ผ์— ์ง์ ‘์ ์œผ๋กœ ํ•ด๋‹น ๊ฐ’์„ ์ €์žฅํ•˜๋ฉด ์•ˆ๋œ๋‹ค. (๋ฌผ๋ฆฌ์ )
    • ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ๊ฐ’์ด ๋‹ฌ๋ผ์งˆ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ
    • ๋…ผ๋ฆฌ์ ์œผ๋กœ ์ €์žฅํ•ด๋†“์ง€ ์•Š์œผ๋ฉด ์„œ๋กœ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์—์„œ ๋‹ค๋ฅด๊ฒŒ ํ•ด์„ํ•  ์š”์ง€๊ฐ€ ์กด์žฌ
    • ํ•˜๋“œ ์ฝ”๋”ฉ์€ ์—ญ์‹œ ์–ด๋””์„œ๋‚˜ ์ข‹์ง€ ์•Š๋‹ค.

Reference