More Related Content
PPTX
PPTX
PPTX
PPTX
PDF
PDF
More effective c++ แแ
กแผแแ
ฉแจ30แแ
ฎแแ
ฅ PPTX
PDF
More effective c++ chapter1 2_dcshin What's hot
PPTX
PDF
Effective c++ chapter 1,2 ์์ฝ PPTX
PPTX
์ดํํฐ๋ธ C++ ์คํฐ๋ PPTX
๋ชจ์ด ์ดํํฐ๋ธ c++ 1,2์ฅ ์คํฐ๋ PPTX
์ดํํฐ๋ธ C++ 5,6 ์ฅ ์คํฐ๋ PPTX
PPTX
Effective c++ chapter 7,8 PPTX
PDF
Effective C++ Chapter 1 Summary PPTX
PPT
effective c++ chapter 3~4 ์ ๋ฆฌ PDF
[SwiftStudy 2016] 3์ฅ. ํจ์ PPTX
PPTX
Effective c++ ์ฑํฐ 2 ์ ๋ฆฌ PDF
PDF
[SwiftStudy 2016] 2์ฅ. Swift ํ์
ํํธ 1 PPTX
PDF
Effective c++ chapter3, 4 ์์ฝ๋ณธ PPTX
Viewers also liked
PPTX
์ค์ ํ๋ก์ ํธ ์ ์๊ฒฝ ์ํ์ฐฌ PPTX
PPTX
PPTX
์ด๋ฑํ์๋ ํ๋ ๊ทธ๋ฅ DB์ค์น PPTX
PPTX
Similar to Effective c++ 4
PPTX
PPTX
[์๊ฟ์ฌ] The C++ Programming Language 13์ฅ ํ
ํ๋ฆฟ PDF
PPTX
PDF
C++ Advanced ๊ฐ์ 3์ฃผ์ฐจ PPTX
More Effective C++ 4์ฃผ์ฐจ PPTX
PDF
Effective c++ chapter7_8_9_dcshin PDF
PDF
PPTX
์ดํํฐ๋ธ C++ 789 ๊ณต๋ถ PPTX
Effective c++chapter1 and2 PPTX
NHNNEXT ๊ฐ๊ฒฝํ14 Subway Rocket Team Study 3rd C++ PPTX
PPTX
PPTX
More effective c++ chapter1,2 PDF
Effective c++ chapter5 6_ 131039 ์ ๋์ฐฌ PDF
PPTX
More effective c++ Chap1~2 PPTX
[์๊ฟ์ฌ] The C++ Programming Language 11์ฅ ์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ Effective c++ 4
- 1.
- 2.
- 3.
- 4.
์ฐ๋ฆฌ๋ SkinnedMesh์ ๊ตฌ์กฐ๋ฅผ์ฝ๋๋ฅผ ํตํด ๋ฐ๋ก ์ ์ ์๊ณ ์ด ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ผ์ผ๋ง ํ๋ค.
์ด๋ฌํ ํํ๋ฅผ ๋ช
์์ ์ธํฐํ์ด์ค๋ผ๊ณ ํ๋ค.
๊ฐ์ ํจ์๊ฐ ์กด์ฌํ๋ค. ์ด ๊ฐ์ํจ์์ ๋ํ ํธ์ถ์ ๋ฐํ์ ๋คํ์ฑ์ ์ํด ์ด๋ฃจ์ด ์ง๋ค.
- 5.
๋ฐ๋๋ก
์๋์ ํ
ํ๋ฆฟ์ด ์ ๋๋ก์ปดํ์ผ ๋๊ธฐ ์ํด์๋ Type T๋ SetHP(), State() ๋ฑ์ด ์ง์๋์ด์ผ ํ๋๋ฐ
obj๊ฐ ์๋ฐ๋๋(operator==๋ฑ๋ฑ) ํจ์๊ฐ ํธ์ถ ๋ ๋๋ ์ปดํ์ผ ๋์ค ํ
ํ๋ฆฟ์ ์ธ์คํด์คํ๊ฐ ์ผ์ด๋๋ค.
obj์ ์ด๋ค ๋งค๊ฐ๋ณ์๊ฐ ๋ค์ด๊ฐ๋๋์ ๋ฐ๋ผ ํธ์ถ๋๋ ํจ์๊ฐ ๋ฌ๋ผ์ง ์ ์๋ค.
์ด๋ฌํ ์ฑ์ง์ ์ปดํ์ผ ํ์ ๋คํ์ฑ์ด๋ผ ํ๋ค.
์ด๋ค์ T๊ฐ ์ง์ํด์ผ ํ๋ ์์์ ์ธํฐํ์ด์ค๋ผ ํ๋ค.
- 6.
๋ง์ด ์ด๋ ต๋ค ํ์ง๋งํ์ด๋ณด๋ฉด ๋ณ๊ฑฐ ์๋ค
โข ์ฐ๋ฆฌ๊ฐ ํด๋์ค ์ธ์คํด์ค ๋ง๋ค์ด ์ฌ์ฉํ๋ฏ ํ
ํ๋ฆฟ๋ ๋งค๊ฐ๋ณ์์
๋ง๋ ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค. ์ด๋ฅผ ํ
ํ๋ฆฟ์ ์ธ์คํด์คํ๋ผ ํ
๋ค.
โข ์ด ๊ณผ์ ์ ๋งค๊ฐ๋ณ์๋ง๋ค ๋ค๋ฅด๋ ์ปดํ์ผ ๊ณผ์ ์์ ํ์ธ๋๋ค. ๋ฐ๋ผ
์ ์ปดํ์ผ ํ์ ๋คํ์ฑ์ด๋ผ ๋ถ๋ฅธ๋ค.
โข ์์์ ์ธํฐํ์ด์ค๋ฅผ ํํ์์ด๋ผ ํ๋ค.
- 7.
- 9.
- 10.
๋ ๊ฐ์ง ์ด๋ฆ
iter๋C์ ํ์
์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค. ์ด๋ฅผ ์์กด์ด๋ฆ์ด๋ผ ํ๋ค.
Value๋ C์ ํ์
๊ณผ๋ ์ ํ ์๊ด์๋ค. ์ด๋ฅผ ๋น์์กด ์ด๋ฆ์ด๋ผ ํ๋ค.
์ ์ฝ๋๋ ๋ฌธ์ ๊ฐ ๋ง๋ค.
์ฐ์ฐํ T::const_iterator๊ฐ ๊ฐ์ ์ด๋ฆ์ ๊ฐ์ง ์ ์ ๋ณ์๋ผ๋ฉด?
๋ชจ๋ ๊ฒฝ์ฐ์ ์์ ๋ํด ์์ ํด์ผ ํ๋ค.
T::const_iterator๋ ์ค์ฒฉ๊ฐ๋ฅ์ฑ์ด ์๋ค. ์ด๋ฅผ ์ค์ฒฉ์์กด์ด๋ฆ์ด๋ผ ํ๋ค.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
๋ก๊ทธ๋ ์ต๊ด์ด๋ ๋ก๊ทธ๋ฅผ๋จ๊ธฐ๋๋ก ํฉ์๋ค.
MsgSender<client>๋ฅผ ์์๋ฐ์์์๋ ๋ถ๊ตฌํ๊ณ sendClear๋ฅผ ์ปดํ์ผ๋ฌ๋ ์์ง ๋ชปํ๋ค.
์ปดํ์ผ๋ฌ๋ client๊ฐ ์ ํํ๊ฒ ๋ฌด์์ธ์ง ๋ชจ๋ฅด๋ ์ํฉ์์ ์ด๋์ ํ์๋ ๊ฒ์ธ์ง ์์ง๋ฅผ ๋ชปํ๋ค!
- 17.
๋ ํ๊ณ ๋ค๋ฉด
๋ง์ฝ ์๋ฒ๊ฐ๋ฉ์์ง๋ฅผ ์ ์กํ ๋๋ ๊ผญ ์ํธํํด์ ๋ณด๋ธ๋ค๊ณ ํ์
ServerA์๋ง ํ์ํ ํน์ํ ํํ์ MsgSender๊ฐ ํ์ํ๋ค.
์์ ํ
ํ๋ฆฟ ํน์ํ
์ค๋ก์ง ServerAํ์
์ ๋ํด์ ํน์ํ ํํ๋ก ์ฌ์ฉํ๋๋ก ํ๊ณ ์๋ค.
๋ง์ฝ ํ
ํ๋ฆฟLogMsgSender์ ServerA๊ฐ ๋ค์ด๊ฐ๊ฒ ๋๋ค๋ฉด MsgSender๋ SendClear๊ฐ ์๋ ์ํฉ์ด๋ค!
- 18.
- 19.
- 20.
inline๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก
โข Template๋๋ง ์ฐ๋ฉด ์คํ๋ ค ์ฝ๋๋น๋ํ ํ์์ด ์ผ์ด๋๋ค.
โข ๊ณตํต์ฑ ๋ฐ ๊ฐ๋ณ์ฑ ๋ถ์์ ํ์.
โข ๋ญ.. ์ด๋ฆ๋ง ์ด๋ ต์ง ์ฐ๋ฆฌ๊ฐ ๋ ํด์ค๋ ์ง์ด๋ค.
โข ๋ค๋งโฆ ํ
ํ๋ฆฟ์ ์์์ ์ด๋ค.
โข ์ผ๋ฐ์ ์ผ๋ก ํจ์๋ก ๋ฌถ์ ์ฝ๋์ค๋ณต ๋ฐฉ์ง๋ ๋ช
์์ ์ด์ง๋ง
โข ํ
ํ๋ฆฟ์ ์ฝ๋์ค๋ณต์ ์ด๋ป๊ฒ ํด์ํ๋์ง ์์์ ์ด๋ค
- 21.
- 22.
์ผ๋จ, ํด๊ฒฐ๋ฐฉ์
์์๋ฐ์ ํด๋์ค์invert๊ฐ ๊ฐ๋ ค์ง๋ ๊ฒ์ ๋ง๊ธฐ ์ํด using์ฌ์ฉ
์ค๋ก์ง ์ฌ๋ณธ์ ํผํ ๋ชฉ์ ์ด๊ธฐ ๋๋ฌธ์ protected๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค.
๋จ์ํ ๊ตฌํ์ ๋๊ธฐ ์ํ ์ฉ๋์ด๊ธฐ ๋๋ฌธ์ private์ ์ด์ฉ
This๋ ์ด๋ฏธ ์์์ using์ด ์ฌ์ฉ๋์์ผ๋ ๋ถํ์ํ๋ค
๋งค๊ฐ๋ณ์๋ก ์กฐ๊ฑด์ ๋ฃ์ด์ค๋ค
์์ง ๋ฉ์๋ค! ๊ณ์ฐ์ ์ํ ํ๋ ฌ ๋ฐ์ดํฐ๊ฐ SquareMatrix์ ์์
๊ฒฝ์ฐ SquareMatrixBase์ invert ๊ณ์ฐ์ ์ด๋ป๊ฒ ํ๋?
- 23.
- 24.
- 25.
- 26.
- 27.
๊ทธ๋ฌ๋ฉด ๋ง๋ค์
๋ฉค๋ฒ ํจ์ํ
ํ๋ฆฟ
๋ชจ๋ T์ Uํ์
์ ๋ํ์ฌ SmartPtr<T>๊ฐ์ฒด๊ฐ SmartPtr<U>๋ก๋ถํฐ ์์ฑ๋ ์ ์๋ค.
์ผ๋ฐ ๋ณต์ฌ ์์ฑ์๋ผ๊ณ ํ๋ค.
ํ์ง๋งโฆ ์ฐ๋ฆฌ๊ฐ ์ํ๋ ์์ญ๋ณด๋ค ๋ ๋ง์ ์์ญ์ ๋ง๋ค์ด๋ผ ์ ์๋ค.
์๋ฅผ ๋ค๋ฉด ์์์์ ๋ถ๋ชจ, ์์์์ ๋ถ๋ชจ๊น์ง๋ ๊ฐ๋ฅํ๋๋ก ํ๊ณ ์๋ค.
- 28.
- 29.
๋ฉค๋ฒ ํจ์ ํ
ํ๋ฆฟ์ํ์ฉ
๊ฐ์ shared_ptr์์์ ์์์ ๋ณํ์ ํ์ฉ๋์ง๋ง ๋ค๋ฅธ ํ์
์ผ๋ก ๋ถํฐ์ ๋ณํ์ ํ์ฉํ์ง ์๊ณ ์๋ค.
์ฌ๊ธฐ๋ง explicit์ด ์๋ค
๋ง์ง๋ง์ผ๋ก, ์ผ๋ฐํ ๋ณต์ฌ ์์ฑ์๋ ์ปดํ์ผ๋ฌ๊ฐ ๋ง๋๋ ๋ณต์ฌ ์์ฑ์๋ฅผ ๋ง๋ ์์๊ฐ ์๋๋ค.
- 30.
- 31.
- 32.
๋ฌธ์ ๊ฐ ์๋ ๊ฒ๊ฐ์ง๋ง ์๋์ฝ๋๋ฅผ ์ปดํ์ผ ํ๋ฉด ์๋ฌ๊ฐ ๋๋ค.
์ง๊ธ์ ๊ฒฝ์ฐ operator*ํจ์๋ฅผ ํธ์ถ ํ ๋ ์ด๋ค ํจ์๋ฅผ ํธ์ถํ๋ ค๋์ง ์ ์ ์๋ค.
operator*์ ํ
ํ๋ฆฟ T๊ฐ ๋ฌด์์ธ์ง ๋ชจ๋ฅด๊ธฐ ๋๋ฌธ์ด๋ค.
oneHalf์ T๊ฐ intํ์์ ์ฝ๊ฒ ์ ์ ์๋ค. ํ์ง๋ง 2์ ๊ฒฝ์ฐ๋ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ ๊ฒ์ธ๊ฐ?
์ปดํ์ผ๋ฌ๋ ํ
ํ๋ฆฟ ์ธ์ ์ถ๋ก ๊ณผ์ ์์ ์์์ ๋ณํ์ ๊ณ ๋ คํ์ง ์๋๋ค.
์ปดํ์ผ๋ฌ๋ ํ
ํ๋ฆฟ ์ธ์ ์ถ๋ก ์ ํตํด ์ธ์๋ฅผ ์ฐพ๋๋ค.
- 33.
์ธ์์ถ๋ก ์ ์๊ณ ๋ฅผ ๋์
ํ
ํ๋ฆฟ์ธ์์ถ๋ก ์ ํด๋์ค ํ
ํ๋ฆฟ์์๋ ์ผ์ด๋์ง ์๋๋ค.
T์ ์ ๋ณด๋ ํด๋น ํด๋์ค๊ฐ ์ธ์คํด์คํ ๋๋ ์๊ฐ ์ ์ ์๋ค.
๋ฌธ์ ๋ ์ปดํ์ผ์ ๋๋๋ฐ ๋งํฌ๊ฐ ์ ๋๋คโฆ.
์ธ๋ถ ํจ์์ธ operator*ํจ์๋ฅผ ์ ์ธ๋ง ํ์ง ์ ์๊ฐ ์๋์ด ์๊ธฐ ๋๋ฌธ์ด๋ค.
๋น๋ฉค๋ฒ ํจ์๋ฅผ ์ ์ธํ๋ ๋ฐฉ๋ฒ์ด friend๋ฐ์ ์๋ค.
- 34.
- 35.
- 36.
- 37.
- 38.
๋ฐ๋ณต์์ ์ข
๋ฅ
โข ์
๋ ฅ๋ฐ๋ณต์(์ฝ๊ธฐ ์ ์ฉ ํ์ผํฌ์ธํฐ ์ฐ์, ํ๋ฒ๋ง ์ฝ์ ์ ์์)
โข ์ถ๋ ฅ ๋ฐ๋ณต์(์์์ ์ค๋ก์ง ์ฐ๊ธฐ๋ง ๊ฐ๋ฅํ๋๋ก ๋ฐ๋)
โข ์๋ฐฉํฅ ๋ฐ๋ณต์(์ฌ๋ฌ ๋ฒ ์ฝ๊ณ ์ฐ๊ธฐ ๊ฐ๋ฅ)
โข ์๋ฐฉํฅ ๋ฐ๋ณต์(์๋ฐฉํฅ์์ ์๋ฐฉํฅ๋ง ์ถ๊ฐ)
โข ์์ ์ ๊ทผ ๋ฐ๋ณต์(๋ฐ๋ณต์ ์ฐ์ ์ฐ์ฐ ์ถ๊ฐ)
- 39.
- 40.
๋์์์
Advance๋ฅผ ๊ตฌํํ ๋iter๊ฐ ์ด๋ ์ข
๋ฅ์ ๋ฐ๋ณต์์ธ์ง ํ์ธํ ํ์๊ฐ ์๋ค.
์ฌ๊ธฐ์ ํน์ฑ์ ๋ณด๋ฅผ ์ฌ์ฉํ๋ค.
ํน์ฑ์ ๋ณด๋ ์ปดํ์ผ ๋์ค์ ์ด๋ค ์ฃผ์ด์ง ํ์
์ ์ ๋ณด๋ฅผ ์ป์ ์ ์๊ฒ ํ๋ ๊ฐ์ฒด๋ฅผ ์ง์นญํ๋ค.
- 41.
ํน์ฑ์ ๋ณด
โข ๋ฌธ๋ฒ๊ตฌ์กฐ๋ ์๋๋ฉฐํค์๋๋ ์๋๋ค.
โข ๊ทธ์ ๊ตฌํ๊ธฐ๋ฒ์ด๋ฉฐ ๊ด๋ก์ด๋ค.
โข ํน์ฑ์ ๋ณด๋ ๊ธฐ๋ณธ์ ๊ณต ํ์
๊ณผ ์ฌ์ฉ์ ์ ์ ํ์
์์ ๋ชจ๋ ๋์๊ฐ
์ผ ํ๋ค.
โข ์ด๋ค ํ์
์์์๋ ๊ตฌํ์ด ๋ถ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์ธ๋ถ์์ ํน์ฑ์
๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ฌด์ธ๊ฐ๊ฐ ํ์ํ๋ค.
- 42.
- 43.
- 44.
์ฌ์ฉ์ ์ ์ ํ์
์ผ๊ฒฝ์ฐ
์ฌ์ฉํ๊ณ ์๋ iterator์ ํ๊ทธ ๊ตฌ์กฐ์ฒด๋ฅผ iterator_category๋ก typedefํ๋ค.
ํ๊ทธ ๊ตฌ์กฐ์ฒด๋ iterator์ ์ข
๋ฅ์ ๋ฐ๋ผ ๋ค๋ฅด๋ค.
- 45.
ํฌ์ธํฐ์ผ ๊ฒฝ์ฐ
ํฌ์ธํฐ ๋ฒ์ ์๋ฐ๋ก ์ ๊ณตํ๊ณ ์๋ค.
์ง์ ํค๋ํ์ผ์ ๋ค์ด๊ฐ๋ณด๋ฉด ๊ฒฝ์ฐ์ ์์ ๋ํด์ ๋ค๋ฅธ ๋ฒ์ ์ ์ง์ํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
์ด๋ฌํ ํํ๋ฅผ ๋ถ๋ถ ํ
ํ๋ฆฟ ํน์ํ๋ผ๊ณ ํ๋ค.
- 46.
๋ค์ ๋์๊ฐ์
๋ผ๊ณ ํ๋ฉด๋ ๊ฒ ๊ฐ์ง๋ง... ๋ฌธ์ ๊ฐ ๋ง๋ค.
Typeid๋ ๊ฐ๋จํ๊ฒ ํ์
์ ์ทจํ๋ ์ฐ์ฐ์๋ค.
if๋ฌธ์ ์ปดํ์ผ์ด ๋ค๋๊ณ ๋ฐํ์ ๋์ค ํ๊ฐ๋๊ธฐ ๋๋ฌธ์ ์คํ๋ ค ์ฝ๋๊ฐ ๋น๋ํด์ง๋ค.
๋ ์ปดํ์ผ๋ ์๋ฌ๊ฐ ๋๋ค. ๊ทธ๊ฑด ๋์ค์ ์ค๋ช
..
- 47.
- 48.
- 49.
ํ
ํ๋ฆฟ ๋ฉํํ๋ก๊ทธ๋๋ฐ
โข ์ปดํ์ผ๋์ค์ ์คํ๋๋ ํ
ํ๋ฆฟ ๊ธฐ๋ฐ์ ํ๋ก๊ทธ๋จ ์์ฑ
โข ์ฆ ์ปดํ์ผ๋ฌ๊ฐ ์คํ์ํค๋ ํ๋ก๊ทธ๋จโฆ.
โข ์คํ์ด ์๋ฃ๋ ์ฐ์ถ๋ฌผ์ ๋ค์ C++์ฝ๋๋ก ๋ค์ด๊ฐ ์ปดํ์ผ ๋๋ค.
โข ๋ฐํ์ ์์ญ์ ์ฐ์ฐ์ ์ปดํ์ผ์๊ฐ์ผ๋ก ํฉ์ณ๋ฒ๋ฆด ์ ์๋ค.
โข ๊น๋ค๋กญ๊ฑฐ๋ ๋ถ๊ฐ๋ฅํ ์ผ๋ ํด๋ธ๋ค.
- 50.
๋ ๋ค์ ๋์๊ฐ์
์๊น๋ฌธ์ ๊ฐ ๋์๋ advance ์ฝ๋
์ปดํ์ผ์ ํด๋ณด๋ฉด ์๋ฌ๊ฐ ๋
๋ค.๋ฐ๋ก += ๋ถ๋ถ์ธ๋ฐ ์ด ๋ถ๋ถ์ if๋ฌธ์ ์ํด ์ ํด์ง ์กฐ๊ฑด์ผ ๋๋ง ์คํ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฐ๋ฐ ์ ๋๋ ๊ฒ์ผ๊น?
If๋ฌธ์ ๋ฐํ์ ๋์ค์ ์คํ๋๋ค. Template์ ์ปดํ์ผ ๋์ค ์คํ๋๋ค.
์ปดํ์ผ ๋์ค์ iter๋ฅผ ์ฒดํฌํ๊ธฐ ๋๋ฌธ์ +=์ ์ค๋ฅ๋ฅผ ์ปดํ์ผ๋ฌ๋ ์ก์ ์ ๋ฐ์ ์๋ค.
- 51.
Letโs TMP
โข ๋ฃจํ๊ฐ์๋คโฆ ํ..
โข ๋ฃจํํจ๊ณผ๋ฅผ ๋ด๊ธฐ ์ํด์ ์ฌ๊ทํจ์๋ฅผ ์ด์ฉํ๋ค.
โข ์ด ์ฌ๊ทํจ์์กฐ์ฐจ๋ ์ฐ๋ฆฌ๊ฐ ์๋ ํํ๊ฐ ์๋๋ค.
โข ์ฌ๊ท์ ํฌํ๋ฆฟ ์ธ์คํด์คํ๋ฅผ ์ด์ฉํ๋ค.
โข ๋คํ์ด TMP์ฉ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค๋ ๊ฝค ์๋ค.
- 52.
- 53.
๋ด ํ์ ๋ณด์ฌ์ฃผ์ง
โข์น์๋จ์์ ์ ํ์ฑ ํ์ธ
โข ํ๋ ฌ ์ฐ์ฐ์ ์ต์ ํ
โข ๋ง์ถค์ ๋์์ธ ํจํด ๊ตฌํ์ ์์ฑ
- 54.
- 55.
new์ ๋ท์ฒ๋ฆฌ ๋ด๋น
new์ฒ๋ฆฌ์๋ผ๊ณ ํ๋ฉฐ ๋ฉ๋ชจ๋ฆฌํ ๋น ๋์ค ๋ฌธ์ ๋ฐ์์ ์ฐ์ ์ ์ผ๋ก ํธ์ถํ๋๋ก ํ๊ณ ์๋ค.
์ฌ์ฉ์ ์ด๋ ๊ฒ ํ๋ค.
์ ์ฝ๋๋ฅผ ์คํ์ํค๋ ์๋ฌด ์ผ๋ ์ ์ผ์ด๋ ์ ์ด ํจ์
new๋ ํ ๋น ๋ฐ์ ์ถฉ๋ถํ ๊ณต๊ฐ์ด ์์ผ๋ฉด ๋ด๋ถ์
์ผ๋ก ์ํํ๋ฉด์ ๊ณ์ ๊ณต๊ฐ์ ์ฐพ๋๋ค.
์ด๋ ์ฒ๋ฆฌ์๋ ๊ณ์ ๋ฐ๋ณต ํธ์ถ๋๋ค.
- 56.
์ฒ๋ฆฌ์ ํจ์์ ํํ
โข์ฌ์ฉํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ ํ๋ณด
โข ๋ค๋ฅธ new ์ฒ๋ฆฌ์๋ฅผ ์ค์น
โข new ์ฒ๋ฆฌ์ ์ค์น๋ฅผ ์ ๊ฑฐ(null์ ์ง์ด๋ฃ๋๋ค.)
โข ์์ธ๋ฅผ ๋์ง
โข ๋ณต๊ทํ์ง ์์(๊บผ๋ฒ๋ฆผ)
- 57.
- 58.
์ด๋ฌํ ๋ฐฉ์์ ์๋ฌ์ฒ๋ฆฌ์ฝ๋๋ฅผ ๋ค๋ฅธ ํด๋์ค์์๋ ์ฌ์ฌ์ฉ ํ๊ณ ์ถ๋ค.
๊ทธ๋ด ๊ฒฝ์ฐ ๋ฏน์ค์ธ ์์์ ์ฌ์ฉํ์.
์ฆ, ๋ค๋ฅธ ํ์ ํด๋์ค๋ค์ด ํ ๊ฐ์ง์ ํน์ ๊ธฐ๋ฅ๋ง์ ๋ฌผ๋ ค๋ฐ์ ๊ฐ ์ ์๋๋ก ์ค๊ณ๋ ๊ธฐ๋ณธํด๋์ค๋ฅผ ๋ง๋ ๋ค.
- 59.
- 60.
- 61.
์ new์ฐ์ฐ์๋ฅผ ๋ฐ๊พธ๊ณ ์ถ์๊น
โข ์๋ชป๋ ํ ์ฌ์ฉ์ ํ์งํ๊ธฐ ์ํด
โข ํจ์จ์ ํฅ์์ํค๊ธฐ ์ํด
โข ๋์ ํ ๋น ๋ฉ๋ชจ๋ฆฌ์ ์ค์ ์ฌ์ฉ์ ๊ดํ ํต๊ณ ์ ๋ณด๋ฅผ ์์งํ๊ธฐ ์ํด
โข ํ ๋น ๋ฐ ํด์ ์๋ ฅ์ ๋์ด๊ธฐ ์ํด
โข ๊ธฐ๋ณธ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ์์ ๊ณต๊ฐ ์ค๋ฒํค๋๋ฅผ ์ค์ด๊ธฐ ์ํด
โข ์ ๋นํ ํํํ ๊ธฐ๋ณธ ํ ๋น์์ ๋ฐ์ดํธ ์ ๋ ฌ ๋์์ ๋ณด์ฅํ๊ธฐ ์ํด
โข ์์์ ๊ด๊ณ๋ฅผ ๋งบ๊ณ ์๋ ๊ฐ์ฒด๋ค์ ํ๊ตฐ๋ฐ๋ก ๋๋ํ ๋ชจ์๋๊ธฐ ์ํด
โข ๊ทธ๋๊ทธ๋ ์ํ๋ ๋์์ ์ํํ๊ธฐ ์ํด
- 62.
- 63.
- 64.
- 65.
- 66.
์ฐ๋ฆฌ๋ ์ง์ ๋ง์ถฐ์ผํจ์ ์๊ณ ์๋ค.
operator new๋ฅผ ํฐ์นํ์ผ๋ฉด operator delete๋ ์ด์ ๋ง๊ฒ ๋ง๋ค์ด์ผ ํ๋ค.
์ ํํ๋ ์๋ชป๋์๋ค.
- 67.
์ถ๊ฐ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฐ๋new
new์ ์ถ๊ฐ๋ก ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํ์ผ๋
delete๋ ์ถ๊ฐ๋ก ํด์ฃผ์ด์ผ ํฉ๋๋ค.
์ถ๊ฐ ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ๋
์ ์ผ๋ก ์์น์ง์ ์ด๋ผ๊ณ ํฉ๋๋ค.
์ง์ด ์์ด delete๋ฅผ ํธ์ถํด๋ ์ด๋ค delete๋ ํธ์ถ๋์ง ์์ต๋๋ค.
- 68.
- 69.
- 70.
์ปดํ์ผ๋ฌ์ ๊ฒฝ๊ณ ๋ฅผ ์ง๋์น์ง๋ง์!
TR1์ ํฌํจํ ํ์ค๊ณผ ์นํด์ง์!
๋ถ์คํธ๋ฅผ ๋ ๊ฐ๊น์ดํ์!
๋ถ์คํธ๋ ์ฌ์ฌ๋ฅผ ๊ฑฐ์น๋ ์คํ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๊ณ๋ฐ๋๋ ๋ชจ์์ด๋ค.
- 71.