Enviar pesquisa
Carregar
2014-15 Intermediate C++ Study #7
โข
4 gostaram
โข
984 visualizaรงรตes
Chris Ohk
Seguir
2014-15 Intermediate C++ Study #7
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 58
Baixar agora
Baixar para ler offline
Recomendados
2014-15 Intermediate C++ Study #6
2014-15 Intermediate C++ Study #6
Chris Ohk
ย
ํ์ด์ฌ sqlite ์ดํดํ๊ธฐ
ํ์ด์ฌ sqlite ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ+แแ ณแฏแ แ ขแแ ณ+แแ ฎแแ ฉ+แแ ตแแ ขแแ กแแ ต 20160310
แแ กแแ ตแแ ฅแซ+แแ ณแฏแ แ ขแแ ณ+แแ ฎแแ ฉ+แแ ตแแ ขแแ กแแ ต 20160310
Yong Joon Moon
ย
More effective c++ chapter1,2
More effective c++ chapter1,2
๋ฌธ์ต ์ฅ
ย
แแ กแแ ตแแ ฅแซ แแ กแซแแ ฉแจแแ ก แแ ขแผแแ ฅแผแแ ก แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ กแซแแ ฉแจแแ ก แแ ขแผแแ ฅแผแแ ก แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Scala type class pattern
Scala type class pattern
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ class ๋ฐ ์ธ์คํด์ค ์์ฑ ์ดํดํ๊ธฐ
แแ กแแ ตแแ ฅแซ class ๋ฐ ์ธ์คํด์ค ์์ฑ ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ ๊ฐ์ฒด ํด๋์ค แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ ๊ฐ์ฒด ํด๋์ค แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Recomendados
2014-15 Intermediate C++ Study #6
2014-15 Intermediate C++ Study #6
Chris Ohk
ย
ํ์ด์ฌ sqlite ์ดํดํ๊ธฐ
ํ์ด์ฌ sqlite ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ+แแ ณแฏแ แ ขแแ ณ+แแ ฎแแ ฉ+แแ ตแแ ขแแ กแแ ต 20160310
แแ กแแ ตแแ ฅแซ+แแ ณแฏแ แ ขแแ ณ+แแ ฎแแ ฉ+แแ ตแแ ขแแ กแแ ต 20160310
Yong Joon Moon
ย
More effective c++ chapter1,2
More effective c++ chapter1,2
๋ฌธ์ต ์ฅ
ย
แแ กแแ ตแแ ฅแซ แแ กแซแแ ฉแจแแ ก แแ ขแผแแ ฅแผแแ ก แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ กแซแแ ฉแจแแ ก แแ ขแผแแ ฅแผแแ ก แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Scala type class pattern
Scala type class pattern
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ class ๋ฐ ์ธ์คํด์ค ์์ฑ ์ดํดํ๊ธฐ
แแ กแแ ตแแ ฅแซ class ๋ฐ ์ธ์คํด์ค ์์ฑ ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ ๊ฐ์ฒด ํด๋์ค แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ ๊ฐ์ฒด ํด๋์ค แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
python data model ์ดํดํ๊ธฐ
python data model ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ+แแ ฎแแ ญ+แแ ญแผแแ ฅ+แแ ฅแผแ แ ต 20160304
แแ กแแ ตแแ ฅแซ+แแ ฎแแ ญ+แแ ญแผแแ ฅ+แแ ฅแผแ แ ต 20160304
Yong Joon Moon
ย
ํ์ด์ฌ ์ฌํ
ํ์ด์ฌ ์ฌํ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ ๊ธฐ์ด
แแ กแแ ตแแ ฅแซ ๊ธฐ์ด
Yong Joon Moon
ย
ํ์ด์ฌ iterator generator ์ดํดํ๊ธฐ
ํ์ด์ฌ iterator generator ์ดํดํ๊ธฐ
Yong Joon Moon
ย
ํ์ด์ฌ ๋ฐ์ดํฐ ๊ฒ์
ํ์ด์ฌ ๋ฐ์ดํฐ ๊ฒ์
Yong Joon Moon
ย
Python ์ดํดํ๊ธฐ 20160815
Python ์ดํดํ๊ธฐ 20160815
Yong Joon Moon
ย
Effective c++ Chapter1,2
Effective c++ Chapter1,2
๋ฌธ์ต ์ฅ
ย
แแ กแแ ตแแ ฅแซ แแ ณแฏแ แ กแแ ณแแ ณ แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ ณแฏแ แ กแแ ณแแ ณ แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Effective c++chapter3
Effective c++chapter3
์ฑ์ฐ ๊น
ย
แแ กแแ ตแแ ฅแซ class ๋ฐ function namespace ์ดํดํ๊ธฐ
แแ กแแ ตแแ ฅแซ class ๋ฐ function namespace ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ แแ กแทแแ ฎ แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ กแทแแ ฎ แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Reflect package แแ กแแ ญแผแแ กแแ ต
Reflect package แแ กแแ ญแผแแ กแแ ต
Yong Joon Moon
ย
Effective c++chapter8
Effective c++chapter8
์ฑ์ฐ ๊น
ย
แแ กแแ ตแแ ฅแซ Special method แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ Special method แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Jupyter notebook ์ดํดํ๊ธฐ
Jupyter notebook ์ดํดํ๊ธฐ
Yong Joon Moon
ย
C++20์์ ๋ฆฌํ๋ ์ ๊ธฐ๋ฅ ๊ตฌํ
C++20์์ ๋ฆฌํ๋ ์ ๊ธฐ๋ฅ ๊ตฌํ
Bongseok Cho
ย
8.๋ค์ค๋ฉ์๋
8.๋ค์ค๋ฉ์๋
Kwang Jung Kim
ย
แแ กแแ ตแแ ฅแซ แแ ขแแ ฎ แแ ฆแแ ตแแ ฅ แแ ฅแทแแ ขแจ แแ กแผแแ ฅแธ
แแ กแแ ตแแ ฅแซ แแ ขแแ ฎ แแ ฆแแ ตแแ ฅ แแ ฅแทแแ ขแจ แแ กแผแแ ฅแธ
Yong Joon Moon
ย
Scala dir processing
Scala dir processing
Yong Joon Moon
ย
C++ Programming - 3rd Study
C++ Programming - 3rd Study
Chris Ohk
ย
C++ Programming - 2nd Study
C++ Programming - 2nd Study
Chris Ohk
ย
Mais conteรบdo relacionado
Mais procurados
python data model ์ดํดํ๊ธฐ
python data model ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ+แแ ฎแแ ญ+แแ ญแผแแ ฅ+แแ ฅแผแ แ ต 20160304
แแ กแแ ตแแ ฅแซ+แแ ฎแแ ญ+แแ ญแผแแ ฅ+แแ ฅแผแ แ ต 20160304
Yong Joon Moon
ย
ํ์ด์ฌ ์ฌํ
ํ์ด์ฌ ์ฌํ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ ๊ธฐ์ด
แแ กแแ ตแแ ฅแซ ๊ธฐ์ด
Yong Joon Moon
ย
ํ์ด์ฌ iterator generator ์ดํดํ๊ธฐ
ํ์ด์ฌ iterator generator ์ดํดํ๊ธฐ
Yong Joon Moon
ย
ํ์ด์ฌ ๋ฐ์ดํฐ ๊ฒ์
ํ์ด์ฌ ๋ฐ์ดํฐ ๊ฒ์
Yong Joon Moon
ย
Python ์ดํดํ๊ธฐ 20160815
Python ์ดํดํ๊ธฐ 20160815
Yong Joon Moon
ย
Effective c++ Chapter1,2
Effective c++ Chapter1,2
๋ฌธ์ต ์ฅ
ย
แแ กแแ ตแแ ฅแซ แแ ณแฏแ แ กแแ ณแแ ณ แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ ณแฏแ แ กแแ ณแแ ณ แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Effective c++chapter3
Effective c++chapter3
์ฑ์ฐ ๊น
ย
แแ กแแ ตแแ ฅแซ class ๋ฐ function namespace ์ดํดํ๊ธฐ
แแ กแแ ตแแ ฅแซ class ๋ฐ function namespace ์ดํดํ๊ธฐ
Yong Joon Moon
ย
แแ กแแ ตแแ ฅแซ แแ กแทแแ ฎ แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ กแทแแ ฎ แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Reflect package แแ กแแ ญแผแแ กแแ ต
Reflect package แแ กแแ ญแผแแ กแแ ต
Yong Joon Moon
ย
Effective c++chapter8
Effective c++chapter8
์ฑ์ฐ ๊น
ย
แแ กแแ ตแแ ฅแซ Special method แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ Special method แแ ตแแ ขแแ กแแ ต
Yong Joon Moon
ย
Jupyter notebook ์ดํดํ๊ธฐ
Jupyter notebook ์ดํดํ๊ธฐ
Yong Joon Moon
ย
C++20์์ ๋ฆฌํ๋ ์ ๊ธฐ๋ฅ ๊ตฌํ
C++20์์ ๋ฆฌํ๋ ์ ๊ธฐ๋ฅ ๊ตฌํ
Bongseok Cho
ย
8.๋ค์ค๋ฉ์๋
8.๋ค์ค๋ฉ์๋
Kwang Jung Kim
ย
แแ กแแ ตแแ ฅแซ แแ ขแแ ฎ แแ ฆแแ ตแแ ฅ แแ ฅแทแแ ขแจ แแ กแผแแ ฅแธ
แแ กแแ ตแแ ฅแซ แแ ขแแ ฎ แแ ฆแแ ตแแ ฅ แแ ฅแทแแ ขแจ แแ กแผแแ ฅแธ
Yong Joon Moon
ย
Scala dir processing
Scala dir processing
Yong Joon Moon
ย
Mais procurados
(20)
python data model ์ดํดํ๊ธฐ
python data model ์ดํดํ๊ธฐ
ย
แแ กแแ ตแแ ฅแซ+แแ ฎแแ ญ+แแ ญแผแแ ฅ+แแ ฅแผแ แ ต 20160304
แแ กแแ ตแแ ฅแซ+แแ ฎแแ ญ+แแ ญแผแแ ฅ+แแ ฅแผแ แ ต 20160304
ย
ํ์ด์ฌ ์ฌํ
ํ์ด์ฌ ์ฌํ
ย
แแ กแแ ตแแ ฅแซ ๊ธฐ์ด
แแ กแแ ตแแ ฅแซ ๊ธฐ์ด
ย
ํ์ด์ฌ iterator generator ์ดํดํ๊ธฐ
ํ์ด์ฌ iterator generator ์ดํดํ๊ธฐ
ย
ํ์ด์ฌ ๋ฐ์ดํฐ ๊ฒ์
ํ์ด์ฌ ๋ฐ์ดํฐ ๊ฒ์
ย
Python ์ดํดํ๊ธฐ 20160815
Python ์ดํดํ๊ธฐ 20160815
ย
Effective c++ Chapter1,2
Effective c++ Chapter1,2
ย
แแ กแแ ตแแ ฅแซ แแ ณแฏแ แ กแแ ณแแ ณ แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ ณแฏแ แ กแแ ณแแ ณ แแ ตแแ ขแแ กแแ ต
ย
Effective c++chapter3
Effective c++chapter3
ย
แแ กแแ ตแแ ฅแซ class ๋ฐ function namespace ์ดํดํ๊ธฐ
แแ กแแ ตแแ ฅแซ class ๋ฐ function namespace ์ดํดํ๊ธฐ
ย
แแ กแแ ตแแ ฅแซ แแ กแทแแ ฎ แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ แแ กแทแแ ฎ แแ ตแแ ขแแ กแแ ต
ย
Reflect package แแ กแแ ญแผแแ กแแ ต
Reflect package แแ กแแ ญแผแแ กแแ ต
ย
Effective c++chapter8
Effective c++chapter8
ย
แแ กแแ ตแแ ฅแซ Special method แแ ตแแ ขแแ กแแ ต
แแ กแแ ตแแ ฅแซ Special method แแ ตแแ ขแแ กแแ ต
ย
Jupyter notebook ์ดํดํ๊ธฐ
Jupyter notebook ์ดํดํ๊ธฐ
ย
C++20์์ ๋ฆฌํ๋ ์ ๊ธฐ๋ฅ ๊ตฌํ
C++20์์ ๋ฆฌํ๋ ์ ๊ธฐ๋ฅ ๊ตฌํ
ย
8.๋ค์ค๋ฉ์๋
8.๋ค์ค๋ฉ์๋
ย
แแ กแแ ตแแ ฅแซ แแ ขแแ ฎ แแ ฆแแ ตแแ ฅ แแ ฅแทแแ ขแจ แแ กแผแแ ฅแธ
แแ กแแ ตแแ ฅแซ แแ ขแแ ฎ แแ ฆแแ ตแแ ฅ แแ ฅแทแแ ขแจ แแ กแผแแ ฅแธ
ย
Scala dir processing
Scala dir processing
ย
Destaque
C++ Programming - 3rd Study
C++ Programming - 3rd Study
Chris Ohk
ย
C++ Programming - 2nd Study
C++ Programming - 2nd Study
Chris Ohk
ย
C++ Programming - 1st Study
C++ Programming - 1st Study
Chris Ohk
ย
2013 C++ Study For Students #1
2013 C++ Study For Students #1
Chris Ohk
ย
C++ Programming - 4th Study
C++ Programming - 4th Study
Chris Ohk
ย
๊ตญ๋ฏผ๋ํ๊ต ์ปดํจํฐํ๋ก๊ทธ๋๋ฐ
๊ตญ๋ฏผ๋ํ๊ต ์ปดํจํฐํ๋ก๊ทธ๋๋ฐ
Minsuk Lee
ย
๊ฒ์ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด ๊ณต๋ถ๋ฒ
๊ฒ์ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด ๊ณต๋ถ๋ฒ
Chris Ohk
ย
Destaque
(7)
C++ Programming - 3rd Study
C++ Programming - 3rd Study
ย
C++ Programming - 2nd Study
C++ Programming - 2nd Study
ย
C++ Programming - 1st Study
C++ Programming - 1st Study
ย
2013 C++ Study For Students #1
2013 C++ Study For Students #1
ย
C++ Programming - 4th Study
C++ Programming - 4th Study
ย
๊ตญ๋ฏผ๋ํ๊ต ์ปดํจํฐํ๋ก๊ทธ๋๋ฐ
๊ตญ๋ฏผ๋ํ๊ต ์ปดํจํฐํ๋ก๊ทธ๋๋ฐ
ย
๊ฒ์ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด ๊ณต๋ถ๋ฒ
๊ฒ์ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด ๊ณต๋ถ๋ฒ
ย
Semelhante a 2014-15 Intermediate C++ Study #7
Effective STL 1~4์ฅ ์ ๋ฆฌ
Effective STL 1~4์ฅ ์ ๋ฆฌ
Shin heemin
ย
์ดํํฐ๋ธ C++ 789 ๊ณต๋ถ
์ดํํฐ๋ธ C++ 789 ๊ณต๋ถ
quxn6
ย
Effective c++chapter4
Effective c++chapter4
์ฑ์ฐ ๊น
ย
[์คํ๋ง ์คํฐ๋ 1์ผ์ฐจ] ํ ํ๋ฆฟ
[์คํ๋ง ์คํฐ๋ 1์ผ์ฐจ] ํ ํ๋ฆฟ
AnselmKim
ย
[HaU] ์ ์ ๊ธฐ์ ๋ฉด์ ์ค๋น java
[HaU] ์ ์ ๊ธฐ์ ๋ฉด์ ์ค๋น java
์ ๋ฆฌ ํ
ย
Effective c++ 4
Effective c++ 4
ํ์ฐฌ ์
ย
Chapter7~9 ppt
Chapter7~9 ppt
Injae Lee
ย
C++ Template/STL study
C++ Template/STL study
Seo Dong-yu
ย
์ดํํฐ๋ธ C++ (7~9)
์ดํํฐ๋ธ C++ (7~9)
์ต์ฑ ์กฐ
ย
C# ๊ฐ์ ๋ฐ ์๊ฐ [ ์ ๋ํฐ ๋ฐ C# ์คํฐ๋ / 2024-04-19 ]
C# ๊ฐ์ ๋ฐ ์๊ฐ [ ์ ๋ํฐ ๋ฐ C# ์คํฐ๋ / 2024-04-19 ]
leusin2
ย
์ดํํฐ๋ธ C++ ์คํฐ๋
์ดํํฐ๋ธ C++ ์คํฐ๋
quxn6
ย
์๋๋ก์ด๋๊ธฐ์ด
์๋๋ก์ด๋๊ธฐ์ด
hylo926
ย
Rails style-guide-2
Rails style-guide-2
Yunho Jo
ย
Mec 56
Mec 56
Gyeongwook Choi
ย
[์๊ฟ์ฌ] The C++ Programming Language 13์ฅ ํ ํ๋ฆฟ
[์๊ฟ์ฌ] The C++ Programming Language 13์ฅ ํ ํ๋ฆฟ
ํด๊ฐ
ย
Effective c++ chapter 1,2 ์์ฝ
Effective c++ chapter 1,2 ์์ฝ
Nam Hyeonuk
ย
[Swift] Extensions
[Swift] Extensions
Bill Kim
ย
๋ธํ์ด ์ฝ๋ฉ ์คํ์ผ๊ณผ ์ํคํ ์ฒ
๋ธํ์ด ์ฝ๋ฉ ์คํ์ผ๊ณผ ์ํคํ ์ฒ
Devgear
ย
Data Structure 4
Data Structure 4
yonsei
ย
C++ api design ํ์ง
C++ api design ํ์ง
HyeonSeok Choi
ย
Semelhante a 2014-15 Intermediate C++ Study #7
(20)
Effective STL 1~4์ฅ ์ ๋ฆฌ
Effective STL 1~4์ฅ ์ ๋ฆฌ
ย
์ดํํฐ๋ธ C++ 789 ๊ณต๋ถ
์ดํํฐ๋ธ C++ 789 ๊ณต๋ถ
ย
Effective c++chapter4
Effective c++chapter4
ย
[์คํ๋ง ์คํฐ๋ 1์ผ์ฐจ] ํ ํ๋ฆฟ
[์คํ๋ง ์คํฐ๋ 1์ผ์ฐจ] ํ ํ๋ฆฟ
ย
[HaU] ์ ์ ๊ธฐ์ ๋ฉด์ ์ค๋น java
[HaU] ์ ์ ๊ธฐ์ ๋ฉด์ ์ค๋น java
ย
Effective c++ 4
Effective c++ 4
ย
Chapter7~9 ppt
Chapter7~9 ppt
ย
C++ Template/STL study
C++ Template/STL study
ย
์ดํํฐ๋ธ C++ (7~9)
์ดํํฐ๋ธ C++ (7~9)
ย
C# ๊ฐ์ ๋ฐ ์๊ฐ [ ์ ๋ํฐ ๋ฐ C# ์คํฐ๋ / 2024-04-19 ]
C# ๊ฐ์ ๋ฐ ์๊ฐ [ ์ ๋ํฐ ๋ฐ C# ์คํฐ๋ / 2024-04-19 ]
ย
์ดํํฐ๋ธ C++ ์คํฐ๋
์ดํํฐ๋ธ C++ ์คํฐ๋
ย
์๋๋ก์ด๋๊ธฐ์ด
์๋๋ก์ด๋๊ธฐ์ด
ย
Rails style-guide-2
Rails style-guide-2
ย
Mec 56
Mec 56
ย
[์๊ฟ์ฌ] The C++ Programming Language 13์ฅ ํ ํ๋ฆฟ
[์๊ฟ์ฌ] The C++ Programming Language 13์ฅ ํ ํ๋ฆฟ
ย
Effective c++ chapter 1,2 ์์ฝ
Effective c++ chapter 1,2 ์์ฝ
ย
[Swift] Extensions
[Swift] Extensions
ย
๋ธํ์ด ์ฝ๋ฉ ์คํ์ผ๊ณผ ์ํคํ ์ฒ
๋ธํ์ด ์ฝ๋ฉ ์คํ์ผ๊ณผ ์ํคํ ์ฒ
ย
Data Structure 4
Data Structure 4
ย
C++ api design ํ์ง
C++ api design ํ์ง
ย
Mais de Chris Ohk
์ธํ์ฝ 2022 - Rust ํฌ๋ก์ค ํ๋ซํผ ํ๋ก๊ทธ๋๋ฐ
์ธํ์ฝ 2022 - Rust ํฌ๋ก์ค ํ๋ซํผ ํ๋ก๊ทธ๋๋ฐ
Chris Ohk
ย
๊ณ ๋ ค๋ํ๊ต ์ปดํจํฐํ๊ณผ ํน๊ฐ - ๋ํ์ ๋ ์์๋๋ผ๋ฉด ์ข์์ ๊ฒ๋ค
๊ณ ๋ ค๋ํ๊ต ์ปดํจํฐํ๊ณผ ํน๊ฐ - ๋ํ์ ๋ ์์๋๋ผ๋ฉด ์ข์์ ๊ฒ๋ค
Chris Ohk
ย
Momenti Seminar - 5 Years of RosettaStone
Momenti Seminar - 5 Years of RosettaStone
Chris Ohk
ย
์ ๋ฆฐ์ธํฐ๋ท๊ณ ๋ฑํ๊ต 2021 ์๊ณ ๋ฆฌ์ฆ ์ปจํผ๋ฐ์ค - Rust๋ก ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด๋ณด๊ธฐ
์ ๋ฆฐ์ธํฐ๋ท๊ณ ๋ฑํ๊ต 2021 ์๊ณ ๋ฆฌ์ฆ ์ปจํผ๋ฐ์ค - Rust๋ก ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด๋ณด๊ธฐ
Chris Ohk
ย
Momenti Seminar - A Tour of Rust, Part 2
Momenti Seminar - A Tour of Rust, Part 2
Chris Ohk
ย
Momenti Seminar - A Tour of Rust, Part 1
Momenti Seminar - A Tour of Rust, Part 1
Chris Ohk
ย
Evolving Reinforcement Learning Algorithms, JD. Co-Reyes et al, 2021
Evolving Reinforcement Learning Algorithms, JD. Co-Reyes et al, 2021
Chris Ohk
ย
Adversarially Guided Actor-Critic, Y. Flet-Berliac et al, 2021
Adversarially Guided Actor-Critic, Y. Flet-Berliac et al, 2021
Chris Ohk
ย
Agent57: Outperforming the Atari Human Benchmark, Badia, A. P. et al, 2020
Agent57: Outperforming the Atari Human Benchmark, Badia, A. P. et al, 2020
Chris Ohk
ย
Proximal Policy Optimization Algorithms, Schulman et al, 2017
Proximal Policy Optimization Algorithms, Schulman et al, 2017
Chris Ohk
ย
Trust Region Policy Optimization, Schulman et al, 2015
Trust Region Policy Optimization, Schulman et al, 2015
Chris Ohk
ย
Continuous Control with Deep Reinforcement Learning, lillicrap et al, 2015
Continuous Control with Deep Reinforcement Learning, lillicrap et al, 2015
Chris Ohk
ย
GDG Gwangju DevFest 2019 - <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
GDG Gwangju DevFest 2019 - <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
Chris Ohk
ย
[RLKorea] <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
[RLKorea] <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
Chris Ohk
ย
[NDC 2019] ํ์ค์คํค ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
[NDC 2019] ํ์ค์คํค ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
Chris Ohk
ย
C++20 Key Features Summary
C++20 Key Features Summary
Chris Ohk
ย
[๋ธ๋ฆฌ๋ง์ฃผ] ๋ํ์ ์บ์ฌ - ์์ฌ์์ ๊ฒ์ ํ๋ก๊ทธ๋๋จธ๊น์ง
[๋ธ๋ฆฌ๋ง์ฃผ] ๋ํ์ ์บ์ฌ - ์์ฌ์์ ๊ฒ์ ํ๋ก๊ทธ๋๋จธ๊น์ง
Chris Ohk
ย
๋๋ฏธ๊ณ ํน๊ฐ - ๊ฐ๋ฐ์ ์์ํ๋ ค๋ ์ฌ๋ฌ๋ถ์๊ฒ
๋๋ฏธ๊ณ ํน๊ฐ - ๊ฐ๋ฐ์ ์์ํ๋ ค๋ ์ฌ๋ฌ๋ถ์๊ฒ
Chris Ohk
ย
์ฒญ๊ฐ๋ ํน๊ฐ - ํ๋ก์ ํธ ์ ๋๋ก ํด๋ณด๊ธฐ
์ฒญ๊ฐ๋ ํน๊ฐ - ํ๋ก์ ํธ ์ ๋๋ก ํด๋ณด๊ธฐ
Chris Ohk
ย
[NDC 2018] ์ ์ฒด์ญํ ์์ง ๊ฐ๋ฐ๊ธฐ
[NDC 2018] ์ ์ฒด์ญํ ์์ง ๊ฐ๋ฐ๊ธฐ
Chris Ohk
ย
Mais de Chris Ohk
(20)
์ธํ์ฝ 2022 - Rust ํฌ๋ก์ค ํ๋ซํผ ํ๋ก๊ทธ๋๋ฐ
์ธํ์ฝ 2022 - Rust ํฌ๋ก์ค ํ๋ซํผ ํ๋ก๊ทธ๋๋ฐ
ย
๊ณ ๋ ค๋ํ๊ต ์ปดํจํฐํ๊ณผ ํน๊ฐ - ๋ํ์ ๋ ์์๋๋ผ๋ฉด ์ข์์ ๊ฒ๋ค
๊ณ ๋ ค๋ํ๊ต ์ปดํจํฐํ๊ณผ ํน๊ฐ - ๋ํ์ ๋ ์์๋๋ผ๋ฉด ์ข์์ ๊ฒ๋ค
ย
Momenti Seminar - 5 Years of RosettaStone
Momenti Seminar - 5 Years of RosettaStone
ย
์ ๋ฆฐ์ธํฐ๋ท๊ณ ๋ฑํ๊ต 2021 ์๊ณ ๋ฆฌ์ฆ ์ปจํผ๋ฐ์ค - Rust๋ก ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด๋ณด๊ธฐ
์ ๋ฆฐ์ธํฐ๋ท๊ณ ๋ฑํ๊ต 2021 ์๊ณ ๋ฆฌ์ฆ ์ปจํผ๋ฐ์ค - Rust๋ก ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด๋ณด๊ธฐ
ย
Momenti Seminar - A Tour of Rust, Part 2
Momenti Seminar - A Tour of Rust, Part 2
ย
Momenti Seminar - A Tour of Rust, Part 1
Momenti Seminar - A Tour of Rust, Part 1
ย
Evolving Reinforcement Learning Algorithms, JD. Co-Reyes et al, 2021
Evolving Reinforcement Learning Algorithms, JD. Co-Reyes et al, 2021
ย
Adversarially Guided Actor-Critic, Y. Flet-Berliac et al, 2021
Adversarially Guided Actor-Critic, Y. Flet-Berliac et al, 2021
ย
Agent57: Outperforming the Atari Human Benchmark, Badia, A. P. et al, 2020
Agent57: Outperforming the Atari Human Benchmark, Badia, A. P. et al, 2020
ย
Proximal Policy Optimization Algorithms, Schulman et al, 2017
Proximal Policy Optimization Algorithms, Schulman et al, 2017
ย
Trust Region Policy Optimization, Schulman et al, 2015
Trust Region Policy Optimization, Schulman et al, 2015
ย
Continuous Control with Deep Reinforcement Learning, lillicrap et al, 2015
Continuous Control with Deep Reinforcement Learning, lillicrap et al, 2015
ย
GDG Gwangju DevFest 2019 - <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
GDG Gwangju DevFest 2019 - <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
ย
[RLKorea] <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
[RLKorea] <ํ์ค์คํค> ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
ย
[NDC 2019] ํ์ค์คํค ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
[NDC 2019] ํ์ค์คํค ๊ฐํํ์ต ํ๊ฒฝ ๊ฐ๋ฐ๊ธฐ
ย
C++20 Key Features Summary
C++20 Key Features Summary
ย
[๋ธ๋ฆฌ๋ง์ฃผ] ๋ํ์ ์บ์ฌ - ์์ฌ์์ ๊ฒ์ ํ๋ก๊ทธ๋๋จธ๊น์ง
[๋ธ๋ฆฌ๋ง์ฃผ] ๋ํ์ ์บ์ฌ - ์์ฌ์์ ๊ฒ์ ํ๋ก๊ทธ๋๋จธ๊น์ง
ย
๋๋ฏธ๊ณ ํน๊ฐ - ๊ฐ๋ฐ์ ์์ํ๋ ค๋ ์ฌ๋ฌ๋ถ์๊ฒ
๋๋ฏธ๊ณ ํน๊ฐ - ๊ฐ๋ฐ์ ์์ํ๋ ค๋ ์ฌ๋ฌ๋ถ์๊ฒ
ย
์ฒญ๊ฐ๋ ํน๊ฐ - ํ๋ก์ ํธ ์ ๋๋ก ํด๋ณด๊ธฐ
์ฒญ๊ฐ๋ ํน๊ฐ - ํ๋ก์ ํธ ์ ๋๋ก ํด๋ณด๊ธฐ
ย
[NDC 2018] ์ ์ฒด์ญํ ์์ง ๊ฐ๋ฐ๊ธฐ
[NDC 2018] ์ ์ฒด์ญํ ์์ง ๊ฐ๋ฐ๊ธฐ
ย
2014-15 Intermediate C++ Study #7
1.
2014-15 INTERMEDIATE C++ STUDY
#7 ์ฅ์ฐฌํธ
2.
๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์
ํตํ ๊ฐ์ฒด ์์ฑ SPREADSHEET ํด๋์ค, ์๋ฉธ์๋ฅผ ์ด์ฉํ ๋ฉ๋ชจ๋ฆฌ ํด์ , ๋ณต์ ์ ๋์ ๊ณผ ๊ด๋ฆฌ
3.
SPREADSHEET ํด๋์ค SpreadsheetCell Spreadsheet SpreadsheetApplication ์ง๋
์๊ฐ์ SpreadsheetCell ํด๋์ค๋ฅผ ์์ฑํ์๋ค. ์ด๋ฒ ์๊ฐ์๋ Spreadsheet ํด๋์ค๋ฅผ ์ ์ง์ ์ผ๋ก ๋ง๋ค์ด ๋ณธ๋ค.
4.
SPREADSHEET ํด๋์ค SpreadsheetCell**์ ์๋ก
๋ค๋ฅธ ํฌ๊ธฐ์ ์ ๊ฒฉ์๋ฅผ ๊ฐ์ง ์ ์๊ธฐ ๋๋ฌธ์ ํฌ์ธํฐ ํ์ ์ ํตํด ์์ฑ์์์ ์ ๊ฒฉ์์ ๋์ด์ ๋๋น์ ๋ง์ถ์ด ๋์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ ์ ์๊ฒ ํ๋ค.
5.
SPREADSHEET ํด๋์ค 2์ฐจ์ ๋ฐฐ์ด์
๋์ ํ ๋น ์ฝ๋, ๊ทธ๋ฆฌ๊ณ ๋์ด 3 / ๋๋น 4 ํฌ๊ธฐ์ ์ ์ ๊ฐ๋ Spreadsheet ๊ฐ์ฒด ์์ฑ. 4 int mWidth 3 int mHeight ์คํ(Stack) ๋ฉ๋ชจ๋ฆฌ SpreadsheetCell** mCells ํ(Heap) ๋ฉ๋ชจ๋ฆฌ ๊ฐ ํญ๋ชฉ์ ๋ฌด๋ช ์ SpreadsheetCell ํฌ์ธํฐ๋ค ๊ฐ ํญ๋ชฉ์ ๋ฌด๋ช ์ SpreadsheetCell ํฌ์ธํฐ๋ค Spreadsheet s1
6.
SPREADSHEET ํด๋์ค x, y
์ขํ๊ฐ ์ ํจํ ์ ์ขํ๋ฅผ ๊ฐ๋ฆฌํค๋์ง ๊ฒ์ฌํ๊ธฐ ์ํด inRange()๋ผ๋ ๋ฉ์๋๋ฅผ ์ด์ฉ.
7.
์๋ฉธ์๋ฅผ ์ด์ฉํ ๋ฉ๋ชจ๋ฆฌ
ํด์ ๋์ ์ผ๋ก ํ ๋นํ ๋ฉ๋ชจ๋ฆฌ๋ ์ฌ์ฉ์ด ๋๋ ํ ๋ฐ๋์ ํด์ ๋ฅผ ํด์ฃผ์ด์ผ ํ๋ค. ๋์ ์ผ๋ก ํ ๋นํ ๋ฉ๋ชจ๋ฆฌ์ ํด์ ๋ ๊ฐ์ฒด ์๋ฉธ์ ์์ ์ํ๋๋ ๊ฒ์ด ๊ฐ์ฅ ๋ฐ๋์งํ๋ค. ์๋ฉธ์๋ ํด๋์ค์ ์ด๋ฆ๊ณผ ๊ฐ์ ์ด๋ฆ์ ๊ฐ์ง๋ ~ ๊ธฐํธ๋ฅผ ์์ ๋ถ์ธ๋ค.
8.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ ๋ณต์
์์ฑ์์ ๋์ ์ฐ์ฐ์๋ฅผ ์ง์ ๋ง๋ค์ง ์์ผ๋ฉด ์ปดํ์ผ๋ฌ๊ฐ ์๋์ผ๋ก ์์ฑํด ์ค๋ค. ์ปดํ์ผ๋ฌ๊ฐ ์๋์ผ๋ก ์์ฑํ ๋ฉ์๋๋ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ค์ ๋ํด ์ฌ๊ท์ ์ผ๋ก ๋ณต์ ์์ฑ์ ๋๋ ๋์ ์ฐ์ฐ์๋ฅผ ํธ์ถํ๋ค. ๋จ, ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ ๋ํด์๋ ๋ณต์ ์์ฑ์๋ ๋์ ์ฐ์ฐ์ ๋์ ์์ ๋ณต์ (Shallow Copy)๊ฐ ์ผ์ด๋๋ค. ํฌ์ธํฐ๊ฐ ๊ฐ๋ฆฌํค๋ ๋ฐ์ดํฐ๋ ๋นผ๋๊ณ ํผ์์ ์ผ๋ก ๋ฐ์ดํฐ ๋ฉค๋ฒ์ ๋นํธ ๊ฐ์ ์๋ณธ์์ ๋์์ผ๋ก ๋ณต์ ํ๊ธฐ๋ง ํ๋ค. ์คํ(Stack) ๋ฉ๋ชจ๋ฆฌ ํ(Heap) ๋ฉ๋ชจ๋ฆฌ ๊ฐ ํญ๋ชฉ์ ๋ฌด๋ช ์ SpreadsheetCell ํฌ์ธํฐ๋ค ๊ฐ ํญ๋ชฉ์ ๋ฌด๋ช ์ SpreadsheetCell ํฌ์ธํฐ๋ค 4 int mWidth 3 int mHeight SpreadsheetCell** mCells Spreadsheet s1 4 int mWidth 3 int mHeight SpreadsheetCell** mCells Spreadsheet s
9.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ ๋ง์ฝ
์ต์ ์ ์ํฉ์ผ๋ก ํจ์ printSpreadsheet()๊ฐ Spreadsheet ๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๋ฉด ์คํ ๊ฐ์ฒด์ธ s์ ์๋ฉธ์๊ฐ ํธ์ถ๋๋ฉด์ mCells ํฌ์ธํฐ๊ฐ ๊ฐ๋ฆฌํค๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํด์ ํด ๋ฒ๋ฆฐ๋ค. ์ด์ s1์ด ๊ฐ๋ฆฌํค๋ ํฌ์ธํฐ๋ ๋๋ ์ ํจํ์ง ์๋ค. ์ด๋ฌํ ํฌ์ธํฐ๋ฅผ ๋๊ธ๋ง ํฌ์ธํฐ(Dangling Pointer)๋ผ๊ณ ํ๋ค. ์คํ(Stack) ๋ฉ๋ชจ๋ฆฌ ํ(Heap) ๋ฉ๋ชจ๋ฆฌ ๋ฐํ ํด์ ๋ ๋ฉ๋ชจ๋ฆฌ 4 int mWidth 3 int mHeight SpreadsheetCell** mCells Spreadsheet s1
10.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ s1๊ณผ
s2 ๋ ๊ฐ์ฒด๊ฐ ์์ฑ๋ ์งํ ๋ฉ๋ชจ๋ฆฌ ์ํ. ์คํ(Stack) ๋ฉ๋ชจ๋ฆฌ ํ(Heap) ๋ฉ๋ชจ๋ฆฌ 4 int mWidth 3 int mHeight SpreadsheetCell** mCells Spreadsheet s2 2 int mWidth 2 int mHeight SpreadsheetCell** mCells Spreadsheet s1
11.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ ๋์ ์ด
์คํ๋๊ณ ๋ ํ์ ๋ฉ๋ชจ๋ฆฌ ์ํ. ์คํ(Stack) ๋ฉ๋ชจ๋ฆฌ ํ(Heap) ๋ฉ๋ชจ๋ฆฌ 4 int mWidth 3 int mHeight SpreadsheetCell** mCells Spreadsheet s2 2 int mWidth 2 int mHeight SpreadsheetCell** mCells Spreadsheet s1 ์ฃผ์ธ์ด ์์ด์ง ๋ฉ๋ชจ๋ฆฌ! (Orphaned Memory) s1, s2์ mCells ํฌ์ธํฐ๊ฐ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ๋ฆฌํค๋ ๊ฒ์ ๋ฌผ๋ก s1์ mCells ํฌ์ธํฐ๊ฐ ๊ฐ๋ฆฌํค๊ณ ์๋ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ด ์ฃผ์ธ์ ์์ด๋ฒ๋ฆฐ๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํผํ๊ธฐ ์ํด์๋ ์ข๋ณํญ์ ๊ฐ์ฒด๊ฐ ์ฐธ์กฐํ๊ณ ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ฐํํ ํ์ ์๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ค๋นํด ๊น์ ๋ณต์ (Deep Copy)๋ฅผ ํด์ผ ํ๋ค.
12.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ Spreadsheet
ํด๋์ค์ ๋ณต์ ์์ฑ์ ์ ์ ๋ฐ ๊ตฌํ. ํฌ์ธํฐ ๋ฐ์ดํฐ ๋ฉค๋ฒ ๋ณ์ mCells์ ๋ํด์๋ ๊น์ ๋ณต์ ๋ฅผ ํ๊ธฐ ์ํด 2์ฐจ์ ๋ฐฐ์ด์ ํฌ์ธํฐ๋ฅผ ์ํํ๋ฉฐ ๊ฐ ๋ฐฐ์ด ํญ๋ชฉ์ ํ๋์ฉ ๋ชจ๋ ๋ณต์ ํ๋ค. ๊ฐ์ฒด ์์ฑ์ ์ํ ๋ณต์ฌ ์์ฑ์์ด๊ธฐ ๋๋ฌธ์ ์์ง ๊ฐ์ฒด ์์ฒด๊ฐ ์กด์ฌํ์ง ์๋๋ค. โ ๋ณต์ ํ๊ธฐ ์ ์ mCells์ ๋ํ ๋ฉ๋ชจ๋ฆฌ ํด์ ๋ฅผ ํ ํ์๊ฐ ์๋ค.
13.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ Spreadsheet
ํด๋์ค์ ๋์ ์ฐ์ฐ์ ์ ์. ์ด๋ค ๊ฐ์ฒด๊ฐ ๋์ ๋์์ผ๋ก ์๋ณธ์ ๊ฐ์ฒด๋ก ๋ฐ์๋ค์ผ ๋๋ ์ด๋ฏธ ๊ฐ์ฒด๊ฐ ์์ฑ๋์ด ์๊ณ ๊ฐ๋ ์์ฑ๋ ์ํ์ด๋ค. ๋์ ์ฐ์ฐ์๊ฐ ํ๋ ์ผ์ ์๋ฉธ์์ ๋ณต์ ์์ฑ์๊ฐ ์ฐ๋ฌ์ ํธ์ถํ๋ ๊ฒ๊ณผ ๋น์ทํ๋ค.
14.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ Spreadsheet
ํด๋์ค์ ๋์ ์ฐ์ฐ์ ๊ตฌํ. ๋จผ์ ์๊ธฐ ์์ ์ ๋์ ํ๋์ง ๊ฒ์ฌํ๋ค. ์ด๋ฌํ ์์ ์ ํ๋ ์ด์ ๋ ์ฑ๋ฅ ์ต์ ํ์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํจ์ด๋ค. ๋ง์ฝ ์๊ธฐ ์์ ์ธ์ง ํ์ธํ๋ ์ฝ๋๊ฐ ์๋ค๋ฉด ์๊ธฐ ์์ ์ ๋์ ํ๋ ์ฝ๋๊ฐ ์คํ๋ ๋ ํ๋ก๊ทธ๋จ์ด ์๋ชป๋ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ผ๋ก ๋น์ ์ ์ข ๋ฃ๋ ์๋ ์๋ค. ์๋ํ๋ฉด ๋์ ๋์ ๊ฐ์ฒด์์๋ ๋ณด์ ํ๊ณ ์๋ ๋์ ๋ฉ๋ชจ๋ฆฌ๋ค์ ๋์ ํ๊ธฐ ์ ์ ๋จผ์ ํด์ ํ๋๋ฐ, ๋์๊ณผ ์๋ณธ์ด ๊ฐ์ผ๋ฏ๋ก ์ด ์๊ฐ์ ์๋ณธ ๊ฐ์ฒด์ ๋ฉ๋ชจ๋ฆฌ๋ ํด์ ๋์ด ํฌ์ธํฐ ๋ฉค๋ฒ๊ฐ ๋๊ธ๋ง ํฌ์ธํฐ๊ฐ ๋์ด ๋ฒ๋ฆฐ๋ค. ๊ทธ๋์ ๋ณต์ ์์ ์ ๋๊ธ๋ง ํฌ์ธํฐ๋ฅผ ์ฐธ์กฐํ๊ฒ ๋๊ณ ์ด๋ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ง ์ ์ ์๋ค.
15.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ ๋์
์ฐ์ฐ์๋ฅผ ๊ตฌํํ๊ฒ ๋๋ฉด, ์ฌ์ค์ ์๋ฉธ์, ๋ณต์ ์์ฑ์๊น์ง ํจ๊ป ๊ตฌํํ๋ ์ ์ด ๋๋ค. ๋ฐ๋ผ์ ๋์ ์ฐ์ฐ์, ์๋ฉธ์, ๋ณต์ ์์ฑ์๋ค์ ์๋ก ์ฐ๊ด๋ ์ฝ๋๋ฅผ ๊ฐ์ง ์๋ฐ์ ์๋ค. ๋ณต์ ์์ฑ์์ ๋์ ์ฐ์ฐ์๋ ์๋นํ ์ ์ฌํ๋ฏ๋ก, ๊ณตํต์ ์ธ ์์ ๋ถ๋ถ์ ๋นผ๋๋ฉด ์ค๋ณต ์ฝ๋๋ฅผ ํผํ ์ ์๋ค.
16.
๋ณต์ ์ ๋์ ์ ๊ด๋ฆฌ ํด๋์ค์์
๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ์ฌ์ฉํ ๋ ๋ณต์ ์ ๋์ ๋๋ฌธ์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ํผํ๋ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ๋ณต์ ์ ๋์ ์ด ๋ฐ์ํ์ง ์๋๋ก ๋ง๋ ๊ฒ์ด๋ค. operator=๊ณผ ๋ณต์ ์์ฑ์๋ฅผ private๋ก ์ ์ธํ๋ฉด ์ฝ๊ฒ ๋ง์ ์ ์๋ค.
17.
์ฌ๋ฌ ์ข ๋ฅ์ ๋ฐ์ดํฐ
๋ฉค๋ฒ ๋ณ์ STATIC ๋ฐ์ดํฐ ๋ฉค๋ฒ, CONST ๋ฐ์ดํฐ ๋ฉค๋ฒ, ์ฐธ์กฐํ ๋ฐ์ดํฐ ๋ฉค๋ฒ, CONST ์ฐธ์กฐํ ๋ฐ์ดํฐ ๋ฉค๋ฒ
18.
STATIC ๋ฐ์ดํฐ ๋ฉค๋ฒ static
๋ฐ์ดํฐ ๋ฉค๋ฒ๋ C์์์ ์ ์ญ ๋ณ์์ ์ ์ฌํ๋ ํน์ ํด๋์ค์ ์ข ์๋๋ค๋ ์ ์ด ๋ค๋ฅด๋ค. C++11์์๋ constexpr์ ํตํด static ๋ฉค๋ฒ ๋ณ์๋ฅผ ์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํํ ์ ์๊ณ , ์ถ๊ฐ์ ์ธ ์์ ์์ด ๋ฐ๋ก static ๋ณ์์ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค. Visual Studio 2013์์๋ constexpr ํค์๋๋ฅผ ์ง์ํ์ง ์๋๋ค. (gcc 4.8.1์ ์ง์, โstd=c++11 ์ต์ ํ์) ์์ธํ ์ฌํญ์ N2756 ๋ฌธ์*๋ฅผ ์ฐธ์กฐ C++11์ด ์ง์๋์ง ์๋ ํ๊ฒฝ์์๋ cpp ํ์ผ์ sCounter ๋ณ์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ๊ณ ์ด๊ธฐํํด์ผ ํ๋ค. ๊ฐ ์คํ๋ ๋์ํธ๋ง๋ค ์๋ฒ์ ๋งค๊ธฐ๋ ๋ณ์ * http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2008/n2756.htm
19.
STATIC ๋ฐ์ดํฐ ๋ฉค๋ฒ ๋ฉ์๋
์์์๋ static ๋ฉค๋ฒ๋ฅผ ์ผ๋ฐ ๋ฉค๋ฒ ๋ณ์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ด์ฉํ ์ ์๋ค. ๊ฐ์ฒด๊ฐ ์์ฑ๋ ๋ ๋ณต์ ์์ฑ์๊ฐ ์ด์ฉ๋ ์๋ ์๋ค๋ ๊ฒ์ ์์ง ๋ง์. ๋ฐ๋ผ์ ๊ณ ์ ์๋ฒ ํ ๋น ์์ ์ ํ๋ค. ๋์ ์ฐ์ฐ์๋ ๊ณ ์ ์๋ฒ ํ ๋น์ด ํ์์๋ค. ๊ณ ์ ์๋ฒ์ ๊ฐ์ฒด ์์ฑ ์์ ์ ํ ๋ฒ ํ ๋น๋ ํ ๋ณ๊ฒฝ๋์ง ์์์ผ ํ๋ค. ๋ณต์ ์์ฑ์ ์์ฑ์
20.
CONST ๋ฐ์ดํฐ ๋ฉค๋ฒ ํด๋์ค์
๋ฐ์ดํฐ ๋ฉค๋ฒ๋ฅผ const๋ก ์ ์ธํ๋ฉด, ์์ฑ ์์ ์ ์ด๊น๊ฐ์ ๋ถ์ฌํ ๋ค์ ๋๋ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๊ฒ ๋๋ค. ๊ทธ๋ฐ๋ฐ ๊ฐ์ฒด ์์ค์์ ์์ซ๊ฐ์ ๋ณด์ ํ๋ ๊ฒ์ ๋๋ถ๋ถ ๋ฉ๋ชจ๋ฆฌ ๋ญ๋น์ด๋ค. ์ด๋๋ static const ๋ฉค๋ฒ๋ฅผ ์ด์ฉํด์ ๊ฐ์ฒด ๊ฐ์ ์์ซ๊ฐ์ ๊ณต์ ํ๋๋ก ํ ์ ์๋ค.
21.
์ฐธ์กฐํ ๋ฐ์ดํฐ ๋ฉค๋ฒ ์คํ๋ ๋์ํธ
ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ ค๋ฉด Spreadsheet, SpreadsheetCell ํด๋์ค๊ฐ SpreadsheetApplication ํด๋์ค์ ํตํฉ๋์ด์ผ ํ๋ค. ๊ทธ๋ฐ๋ฐโฆ SpreadsheetCell Spreadsheet SpreadsheetApplication Spreadsheet SpreadsheetApplication SpreadsheetApplication์ ๋ณต์์ Spreadsheet๋ฅผ ๊ด๋ฆฌํ๊ธฐ ๋๋ฌธ์ Spreadsheet ํด๋์ค๋ฅผ ์์์ผ๋ง ํ๋ค. ๋ฐ๋ผ์ SpreadsheetApplication์ ์ ์ํ๊ธฐ ์ ์ Spreadsheet๊ฐ ์ ์๋์ด ์์ด์ผ ํ๋ค. Spreadsheet ํด๋์ค๋ SpreadsheetApplication ํด๋์ค์ ์ปค๋ฎค๋์ผ์ด์ ํด์ผ ํ๊ธฐ ๋๋ฌธ์ SpreadsheetApplication์ ์์์ผ ํ๋ค. ๋ฐ๋ผ์ Spreadsheet์ ์ ์ํ๊ธฐ ์ ์ SpreadsheetApplication์ด ์ ์๋์ด ์์ด์ผ ํ๋ค.
22.
์ฐธ์กฐํ ๋ฐ์ดํฐ ๋ฉค๋ฒ #include๋ก๋
ํด๊ฒฐํ ๋ฐฉ๋ฒ์ด ์๋ค. ์ด์ ๋ํ ํด๊ฒฐ์ฑ ์ผ๋ก ํฌ์๋ ์ ์ธ(Forward Declaration)์ด ์๋ค. ๊ต์ฐจ ์ฐธ์กฐ๋๋ ํด๋์ค์ ํค๋ ํ์ผ ์ค ์ด๋ ํ ์ชฝ์ ์๋ํธ ํด๋์ค์ ํค๋๋ฅผ ์ธํด๋ฃจ๋ํ๋ ๋์ ํฌ์๋ ์ ์ธ์ ํด๋๋ฉด ์ปดํ์ผ๋ฌ๊ฐ ๋์ค์ ํด๋น ์ ์๋ฅผ ์ฐพ์๋ค๊ฐ ํ์ ๋งค์นญ์ ํ๋ค.
23.
์ฐธ์กฐํ ๋ฐ์ดํฐ ๋ฉค๋ฒ ์ฐธ์กฐํ
๋ณ์๋ ์์ฑ๊ณผ ๋์์ ๋ค๋ฅธ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๋๋ก ์ด๊ธฐํํด์ผ ํ๋ค. ํ ๋ฒ ์ด๊ธฐํ๋๊ณ ๋๋ฉด ๋ค๋ฅธ ๊ฐ์ผ๋ก ๋ฐ๊ฟ ์๊ฐ ์๋ค.
24.
CONST ์ฐธ์กฐํ ๋ฐ์ดํฐ
๋ฉค๋ฒ const ์ฐธ์กฐํ ๋ณ์๋ก ์ฐธ์กฐ๋ ๊ฐ์ฒด๋ const ๋ฉ์๋๋ง ์ด์ฉํ ์ ์๋ค. ๋ง์ฝ const ์ฐธ์กฐ๋ ๊ฐ์ฒด์์ const๊ฐ ์๋ ๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ์ปดํ์ผ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. static ์ฐธ์กฐํ ๋ฉ๋ฒ๋ static const ์ฐธ์กฐํ ๋ฉค๋ฒ๋ ์ ์ธํ ์ ์์ง๋ง ํน๋ณํ ์๋ฏธ๋ ์๋ค.
25.
๋ฉ์๋์ ์ข ๋ฅ STATIC ๋ฉ์๋,
CONST ๋ฉ์๋, ๋ฉ์๋ ์ค๋ฒ๋ก๋ฉ, ๋ํดํธ ํ๋ผ๋ฏธํฐ, INLINE ๋ฉ์๋
26.
STATIC ๋ฉ์๋ static ๋ฉ์๋์
์ ์ธ ๋ฐฉ๋ฒ์ static ๋ฐ์ดํฐ ๋ฉค๋ฒ์ ๊ฐ๋ค. (ํน์ ํด๋์ค์ ๋ชจ๋ ๊ฐ์ฒด์ ๊ณตํต์ ์ผ๋ก ์ ์ฉ) static ๋ฉ์๋๋ ๊ฐ์ฒด์ ๋ฌถ์ด์ง ์๊ธฐ ๋๋ฌธ์ โ๊ฐ์ฒด์ ๋ณ๊ฒฝ์ ๊ฐํ์ง ์๋๋ค.โ๋ผ๋ ์๋งจํฑ์ ์ ์ฉํ ์ ์๋ค. ๋ฐ๋ผ์ static ๋ฉ์๋๋ฅผ ์ ์ธํ๋ ค๋ฉด const๋ฅผ ๋นผ์ผ ํ๋ค.
27.
CONST ๋ฉ์๋ ๋ฉ์์ง๋ฅผ const๋ก
์ ์ธํ๋ฉด ๋ฉ์๋ ํธ์ถ ๋๋ฌธ์ ๊ฐ์ฒด์ ๋ฐ์ดํฐ ๊ฐ์ด ๋ฐ๋์ง ์๋๋ค๋ ๊ฒ์ ๋ณด์ฆํด์ค๋ค. ๋ง์ฝ const๋ก ์ ์ธํ ๋ฉ์๋ ์์์ ๊ฐ์ฒด์ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ฅผ ๋ณ๊ฒฝํ๋ ค ํ๋ฉด ์ปดํ์ผ๋ฌ๊ฐ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ ์ ์๋ค. const ๋ฉ์๋์ ๋์ ๋ฐฉ์์ ๋ฉ์๋ ๋ด์์ ์ ๊ทผํ๋ ๋ชจ๋ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ฅผ const๋ก ์ทจ๊ธํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ตฌํ๋๋ค.
28.
CONST ๋ฉ์๋ const๊ฐ ์๋
๊ฐ์ฒด์ ๋ํด์๋ const ์ฌ๋ถ์ ๊ด๊ณ์์ด ๋ชจ๋ ๋ฉ์๋๋ฅผ ํธ์ถํ ์ ์๋ค. ํ์ง๋ง const ๊ฐ์ฒด์ ๋ํด์๋ const ๋ฉ์๋๋ง ํธ์ถํ ์ ์๋ค. ๊ฐ๋ฅํ๋ค๋ฉด ๊ฐ์ฒด๋ฅผ ๋ณ๊ฒฝํ์ง ์๋ ๋ชจ๋ ๋ฉ์๋์ const ์ ํ์๋ฅผ ์ ์ฉํด const ๊ฐ์ฒด๋ฅผ ํธ์ถํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค.
29.
CONST ๋ฉ์๋ ๋ฉ์๋๊ฐ ๊ฐ์ฒด์
ํน์ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ฅผ ๋ณ๊ฒฝํ๊ธฐ๋ ํ์ง๋ง ๋ ผ๋ฆฌ์ ์ผ๋ก๋ const์ธ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์คํ๋ ๋์ํธ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉ์ ์ด์ฉ ์ฑํฅ์ ํ๋กํ์ผ๋ง ํด๋ณด๊ธฐ ์ํด ์ ๊ทผ ์นด์ดํฐ๋ฅผ ๊ตฌํํ๋ค๊ณ ํ์. ์ด ์นด์ดํฐ๋ ๊ฐ์ฒด์ ๋ฐ์ดํฐ์ ๋ณํ๋ฅผ ์ฃผ์ง ์์ง๋ง, ์ปดํ์ผ๋ฌ์์๋ ๊ฐ์ฒด์ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ฅผ ๋ณ๊ฒฝํ๋ ํ์์ ๊ตฌ๋ณ์ด ์๋๋ค. mutable ์์ฑ์ ์นด์ดํฐ ๋ฉค๋ฒ ๋ณ์์ ์ ์ฉํ๋ฉด ํด๋น ๋ณ์์ ๋ณ๊ฒฝ์ด ๋ฉ์๋์ const์ ์ํฅ์ ๋ฏธ์น์ง ์๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผํ๋ค.
30.
๋ฉ์๋ ์ค๋ฒ๋ก๋ฉ ์์ ํด๋์ค
์์ฑ์๋ ์ด๋ฆ์ด ๊ฐ๋๋ผ๋ ํ๋ผ๋ฏธํฐ์ ํ์ ์ด๋ ๊ฐ์๊ฐ ๋ค๋ฅด๋ค๋ฉด ์ฌ๋ฌ ๊ฐ๋ฅผ ์ ์ํ ์ ์์๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ฌํ ์ ์ ๋ฐฉ์์ ์ผ๋ฐ ๋ฉ์๋๋ ํจ์์๋ ๊ทธ๋๋ก ์ ์ฉ๋๋ค. ์ด๋ฆ์ด ๊ฐ์ ๋ฉ์๋, ํจ์๋ฅผ ํ๋ผ๋ฏธํฐ๋ง ๋ฌ๋ฆฌํ์ฌ ์ ์ํ๋ ๊ฒ์ ์ค๋ฒ๋ก๋ฉ(Overloading)์ด๋ผ ํ๋ค. ์ปดํ์ผ๋ฌ๊ฐ set() ๋ฉ์๋์ ํธ์ถ์ ๋ง๋๋ฉด ์ธ์์ ๋ฐ์ดํฐ ํ์ ๊ณผ ๊ฐ์๋ฅผ ๋ณด๊ณ ์ ํฉํ ๋ฉ์๋๋ก ๋งคํํด์ค๋ค. ์ด๋ฌํ ๋ฉ์ปค๋์ฆ์ ์ค๋ฒ๋ก๋ ์ง์ (Overload Resolution)์ด๋ผ๊ณ ํ๋ค. ๋ฐ์ดํฐ ํ์ : int ๊ฐ์ : 1๊ฐ ๋ฐ์ดํฐ ํ์ : string ๊ฐ์ : 1๊ฐ
31.
๋ฉ์๋ ์ค๋ฒ๋ก๋ฉ C++์์๋ ํ๋ผ๋ฏธํฐ์
์ฐจ์ด๊ฐ ์์ด ๋ฆฌํด ํ์ ์ผ๋ง ๋ค๋ฅธ ๋ฉ์๋๋ ํจ์์ ๋ํด์ ์ค๋ฒ๋ก๋ฉ์ ํ์ฉํ์ง ์๋๋ค. ์๋ํ๋ฉด ๋ฆฌํด ํ์ ์ ์ฐจ์ด๋ง์ผ๋ก๋ ์ปดํ์ผ๋ฌ๊ฐ ์ค๋ฒ๋ก๋ ์ง์ ์ ์ง์ ํ ์ ์๋ ์ํฉ์ด ๋ง๊ธฐ ๋๋ฌธ์ด๋ค. const ์ ํ์์ ๊ธฐ๋ฐํ ์ค๋ฒ๋ก๋ฉ๋ ๊ฐ๋ฅํ๋ค. ์ด๋ฆ๊ณผ ํ๋ผ๋ฏธํฐ๊ฐ ๊ฐ์ ๋ ๋ฉ์๋ ์ค ์ด๋ ํ ์ชฝ๋ง const๋ผ๋ฉด, ๊ทธ ๋ฉ์๋๋ฅผ ํธ์ถํ ๊ฐ์ฒด์ ํ์ ์ด const๋ ์๋๋์ ๋ง์ถฐ์ ์ปดํ์ผ๋ฌ๊ฐ ํธ์ถ๋ ๋ฉ์๋๋ฅผ ์ง์ ํ ์ ์๋ค.
32.
๋ฉ์๋ ์ค๋ฒ๋ก๋ฉ C++11์์๋ ํน์
ํ๋ผ๋ฏธํฐ ํ์ ์ ์ค๋ฒ๋ก๋ ๋ฉ์๋๊ฐ ์ฌ์ฉ๋์ง ์๋๋ก ๋ช ์์ ์ผ๋ก ์ญ์ ํ ์๋ ์๋ค. c.foo(1); double ํ์ ๊ฐ 1.2์ ์ ์ 1๋ก ํ์ ์บ์คํ
33.
๋ํดํธ ํ๋ผ๋ฏธํฐ ๋ํดํธ ํ๋ผ๋ฏธํฐ๋
ํจ์๋ ๋ฉ์๋์ ์ํ์ ์ ์ธํ ๋ ๊ฐ ํ๋ผ๋ฏธํฐ์ ๋ํดํธ ๊ฐ์ ์ง์ ํ ์ ์๋ค. ๋ง์ฝ ์ฌ์ฉ์๊ฐ ํด๋น ์ธ์๋ฅผ ์ง์ ์ ๊ณตํ๋ฉด ๋ํดํธ ๊ฐ์ ๋ฌด์๋๋ฉฐ, ๊ณต๋์ผ๋ก ํ๋ฉด ๋ํดํธ ๊ฐ์ด ์๋์ผ๋ก ์ ์ฉ๋๋ค. ๋ํดํธ ํ๋ผ๋ฏธํฐ๋ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ํ๋ผ๋ฏธํฐ๋ถํฐ ์์ํด ํ๋ผ๋ฏธํฐ ๊ฑด๋๋ ์์ด ์ฐ์์ ์ผ๋ก๋ง ์ ์ฉํ ์ ์๋ค. s1(theApp, 100, 100) s1(theApp, 5, 100) s1(theApp, 5, 6)
34.
INLINE ๋ฉ์๋ C++์์๋ ๋ฉ์๋๋
ํจ์๋ฅผ ๋ณ๋์ ๋ถ๋ฆฌ๋ ์ฝ๋ ๋ธ๋ก์ผ๋ก ํธ์ถํ๋ ๋์ , ํธ์ถ ์ง์ ์ ๋ฐ๋ก ๋ฉ์๋๋ ํจ์์ ๋ฐ๋๋ฅผ ์ฎ๊ฒจ ๋ฃ์ด ํธ์ถ ์ค๋ฒํค๋๋ฅผ ์ค์ด๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค.์ด๋ฌํ ๋ฐฉ๋ฒ์ ์ธ๋ผ์ด๋(Inlining)์ด๋ผ ํ๋ค. inline์ด ์ ๋๋ก ๋์ํ๊ธฐ ์ํด์๋ ํด๋น ๋ฉ์๋, ํจ์์ ๋ฐ๋ ๋ด์ฉ์ ํด๋น ์ฝ๋์ ์ปดํ์ผ ์์ ์ ๊ฐ์ง๊ณ ์์ด์ผ๋ง ํ๋ค. ์ด ๋๋ฌธ์ inline ๋ฉ์๋, ํจ์๋ .cpp ํ์ผ์ด ์๋ .h ํค๋ ํ์ผ์์ ์ ์๋ฅผ ๊ฐ์ง๋ค.
35.
INLINE ๋ฉ์๋ C++๋ inline
ํค์๋๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ ๋ฉ์๋๋ฅผ ์ธ๋ผ์ด๋ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค. ๋ฉ์๋์ ๊ตฌํ๋ถ๋ฅผ ํด๋์ค ์ ์ ํ์ ๋ฐ๋ก ๋ง๋๋ ๋์ , ์์์ ๋ฐ๋ก ๊ตฌํ๋ถ๋ฅผ ์ ์ํ๋ฉด ๋๋ค. ๋ค๋ง, inline์ผ๋ก ์ ์ธํ๋๋ผ๋ ์ค์ ๋ก ์ธ๋ผ์ด๋๋ ์ง ์๋ ์ง๋ ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๋ค. ์ปดํ์ผ๋ฌ๋ ์์ ํฌ๊ธฐ์ ๋ฉ์๋, ํจ์๋ง ์ธ๋ผ์ด๋ํ๋ค. ๋ง์ฝ ์ ์ ํ์ง ์์ ๋ฉ์๋, ํจ์๋ฅผ ์ธ๋ผ์ด๋ํ๋ ค ํ๋ฉด ์ปดํ์ผ๋ฌ๊ฐ ๋ฌด์ํด ๋ฒ๋ฆฐ๋ค.
36.
์ค์ฒฉ๋ ํด๋์ค
37.
์ค์ฒฉ๋ ํด๋์ค ํด๋์ค ์ ์๊ฐ
๋ฉ์๋๋ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ง ๋ด์ ์ ์๋ ๊ฒ์ ์๋๋ค. ํด๋์ค ์ ์์๋ struct, typedef, enum๋ ํฌํจ๋ ์ ์๋ค. ๋จ, public์ผ๋ก ์ ์ธ๋์ด ์์ด์ผ ํ๋ค. ํด๋์ค ์์ ๋ ๋ค๋ฅธ ํด๋์ค๋ฅผ ์ ์ํ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค.
38.
์ค์ฒฉ๋ ํด๋์ค SpreadsheetCell ํด๋์ค๋ฅผ
์ด์ฉํ๊ธฐ ์ํด์๋ ์ค์ฝํ ์ง์ ์ฐ์ฐ์์ Spreadsheet::์ ๋ถ์ฌ์ผ ํ๋ค. ์ด๋ฌํ ๋ฌธ๋ฒ์ ์ฝ๋๋ฅผ ์ง์ ๋ถํ๊ฒ ๋ง๋ ๋ค. ์ด ๋๋ typedef๋ฅผ ์ด์ฉํด ์ถ์ฝํด์ ์ฌ์ฉํ๋ค.
39.
ํด๋์ค ์ข ์ ๋์ดํ
๋ฐ์ดํฐ ํ์
40.
ํด๋์ค ์ข ์ ๋์ดํ
๋ฐ์ดํฐ ํ์ ์์ซ๊ฐ๋ค์ ์ ์ํด์ผ ํ๋ค๋ฉด #define ๋์ ๋์ดํ ํ์ ์ ์ด์ฉํ๋ ๊ฒ์ด ์ข๋ค. #define ์์๋ฅผ ์ด์ฉํ๋ฉด ์์ ๋ณ์์ ํ์ ์ int๋ก ํ ์ ๋ฐ์ ์๋ค. ๊ทธ๋ฌ๋ฉด ์์์ผ๋ก ์ ์๋์ง ์์ ์์ซ๊ฐ์ด ์ค์ ๋ ๊ฐ๋ฅ์ฑ์ด ์์ด ์ด์ ๋ํ ๊ฒ์ฌ๋ฅผ ๋ฐํ์์ ๋ณ๋๋ก ํด์ผ ํ๋ค. ๋ฐ๋ฉด์ ๋์ดํ ํ์ ์ ์ด์ฉํ๋ฉด ์ปดํ์ผ๋ฌ๊ฐ ๋น๋ ํ์์ ์๋ชป๋ ์์์ ์ด์ฉ์ ๊ฒ์ฌํด์ฃผ์ด ๋ ํจ์จ์ ์ด๊ณ ์์ ํ๋ค.
41.
FRIEND ์์ฑ
42.
FRIEND ์์ฑ friend ์ค์ ์
์ด์ฉํ๋ฉด ๋ค๋ฅธ ํด๋์ค ๋๋ ๋ค๋ฅธ ํด๋์ค์ ๋ฉ์๋์์ private๋ protected๋ก ์ ์ธ๋ ๋ฉค๋ฒ ๋ฐ ๋ฉ์๋์ ์ ๊ทผํ ์ ์๋ค. friend ์ ์ธ์ ๊ถํ์ ์ด์ด์ค ํด๋์ค์์๋ง ํ ์ ์๋ค. ์ฆ, ๋ค๋ฅธ ํด๋์ค์ ๋ํด ์ ๊ทผ ๊ถํ์ ์์ฒญํ๋ ํด๋์ค ๋๋ ๋ฉ์๋ ์ค์ค๋ก ๋ค๋ฅธ ํด๋์ค์ friend ์ ์ธ์ ํ ์๋ ์๋ค. friend๋ ๋จ์ฉ๋๊ธฐ ์ฝ๋ค. friend๋ฅผ ์ด์ฉํ๋ฉด ๋ด๋ถ ๊ตฌ์กฐ๋ฅผ ๋ค๋ฅธ ํด๋์ค๋ ํจ์์ ๋ ธ์ถํ๊ธฐ ๋๋ฌธ์ ์ถ์ํ ์์น์ด ํผ์๋๋ค. ์ด ๋๋ฌธ์ ์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ๊ณผ ๊ฐ์ด ๋ถ๊ฐํผํ ์ํฉ์์๋ง ์ด์ฉํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค.
43.
์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ SPREADSHEETCELL์ ๋ง์
๊ธฐ๋ฅ ๊ตฌํ, ์ฐ์ ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ, ๋น๊ต ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ
44.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ 1. add ๋ฉ์๋
45.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ ๊ฐ์ ์ํ ์ ๋ฌ ๋์ , ๋ณต์ ๊ฐ ์ผ์ด๋์ง ์๋ ์ฐธ์กฐํ์ผ๋ก ๋ฆฌํดํ๋ฉด ์ด๋จ๊น ํ๊ณ ์๊ฐํ ์๋ ์๋ค. ํ์ง๋ง add() ๋ฉ์๋๊ฐ ๋ฆฌํดํ๋ ์๊ฐ newCell ๊ฐ์ฒด๋ ์๋ฉธ๋๊ธฐ ๋๋ฌธ์ ์ฐธ์กฐํ์ผ๋ก ๋ฆฌํดํ๊ฒ ๋๋ฉด ๋ฉ์๋์ ํธ์ถ์ด ๋๋์๋ง์ ๋๊ธ๋ง ์ฐธ์กฐ(Dangling Reference)๊ฐ ๋์ด ๋ฒ๋ฆฐ๋ค. ์ด ์๊ฐ, add() ๋ฉ์๋์์ ์์ฑํ๋ newCell ๊ฐ์ฒด๋ ์ฌ๋ผ์ง๊ฒ ๋๋ค. ์ฐธ์กฐํ์ ์ด๋ค ๋ณ์๋ฅผ ๊ฐ๋ฆฌ์ผ์ผ ๋๋๋ฐ ๊ฐ๋ฆฌํฌ ๋ณ์๊ฐ ์ฌ๋ผ์ง๊ฒ ๋์ด ์ ํจํ์ง ์๊ฒ ๋๋ค.
46.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ 2. operator+์ ์ค๋ฒ๋ก๋ฉ
47.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ operator+ ๋ฉ์๋์์ ๋ฐ๋ ํ๋ผ๋ฏธํฐ ๋ ๊ฐ๊ฐ ํญ์ ๊ฐ์ ๋ฐ์ดํฐ ํ์ ์ผ ํ์๋ ์๋ค. SpreadsheetCell ํด๋์ค์์ Spreadsheet ํด๋์ค๋ฅผ ํ๋ผ๋ฏธํฐ๋ก ๋ฐ๋ operator+ ๋ฉ์๋๋ฅผ ์ ์ํ ์๋ ์๋ค. ๋ ผ๋ฆฌ์ ์ผ๋ก๋ ๋ง์ด ์๋์ง๋ง ์ปดํ์ผ์๋ ์๋ฌด๋ฐ ๋ฌธ์ ๊ฐ ์๋ค. C++ ์ปดํ์ผ๋ฌ๊ฐ ์ฝ๋๋ฅผ ํ์ฑํ๋ค๊ฐ +, -, =๊ณผ ๊ฐ์ ๊ธฐํธ๋ฅผ ๋ง๋๊ฒ ๋๋ฉด operator+, operator-, operator=๋ฅผ ๊ฐ๊ฐ ์ฐพ์์ ํ๋ผ๋ฏธํฐ ํ์ ์ ์ ํฉํ ๋ฉ์๋๋ฅผ ํธ์ถํ๊ฒ ๋๋ค. (SpreadsheetCell ํด๋์ค๋ ์ ์ญ ํจ์ ์ค ๋ ๊ฐ์ SpreadsheetCell ํ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๋ operator+๋ผ๋ ์ด๋ฆ์ ๋ฉ์๋ ๋๋ ํจ์๊ฐ ์๋์ง ์ฐพ๋๋ค.)
48.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ operator+ ๋ฉ์๋๋ฅผ ์ ์ํด ๋๋ฉด ์ ๋ฟ๋ง ์๋๋ผ string, double, int ํ์ ๋ฐ์ดํฐ๋ ๋ง์ ์ ํ ์ ์๊ฒ ๋๋ค. ๊ทธ ์ด์ ๋ ์ปดํ์ผ๋ฌ๊ฐ operator+๋ฅผ ์ฒ๋ฆฌํ ๋ ์ ํฉํ ํ์ ์ผ๋ก ๋ณํํ ๋ฐฉ๋ฒ์ด ์๋์ง๋ ์ฐพ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ง์ฝ ์์ฑ์ ์ค์ ๋ถ์ ํฉํ ํ์ ์ ์ธ์๋ก ๋ฐ๋ ๊ฒ์ด ์๋ค๋ฉด ๊ทธ ์์ฑ์๋ฅผ ์ด์ฉํด ์ ํฉํ ํ์ ์ ์์ ๊ฐ์ฒด๋ฅผ ์๋์ผ๋ก ์์ฑํ๋ค. SpreadsheetCell์ string ํ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๋ ์์ฑ์๊ฐ ์๋ ๊ฒ์ ๋ฐ๊ฒฌํ๊ณ SpreadsheetCell์ ์์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด operator+์ ์คํํ๋ค. SpreadsheetCell์ double ํ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๋ ์์ฑ์๊ฐ ์๋ ๊ฒ์ ๋ฐ๊ฒฌํ๊ณ SpreadsheetCell์ ์์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด operator+์ ์คํํ๋ค. int๋ฅผ double๋ก ๋ณํ
49.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ 3. ์ ์ญ ํจ์๋ก์์ operator+ ๋ฌต์์ ์ธ ๋ณํ์ ์ฐ์ฐ์์ ์ขํญ์ด SpreadsheetCell ๊ฐ์ฒด์ธ ๊ฒฝ์ฐ์๋ง ๋์ํ๊ณ ์ฐํญ์ ์์นํ๋ฉด ๋์ํ์ง ์๋๋ค. ๋ง์ ์ ์ธ์์ ์ข์ฐ ์์น์ ๊ด๊ณ์์ด์ผ ํ๋ฏ๋ก ๋ถ๋ช ๋ฌด์ธ๊ฐ ์๋ชป๋์๋ค. ๋ฌธ์ ๋ SpreadsheetCell์ ๋ฉ์๋๋ก์ operator+๋ฅผ ์ ์ํ๋ฉด ๊ฐ์ฒด์ ์ฐํญ์ ์์ ๋๋ง operator+๊ฐ ํธ์ถ๋๋ค๋๋ฐ ์๋ค. ํ์ง๋ง ์ ์ญ ํจ์๋ก์ operator+๋ฅผ ์ ์ํ์ฌ ํน์ ๊ฐ์ฒด์ ์ข ์๋์ง ์๋๋ก ํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๋ค.
50.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ ์ ์ญ ํจ์ operator+๋ SpreadsheetCell ํด๋์ค์ protected ๋ฉค๋ฒ์ ์ ๊ทผํด์ผ ํ๊ธฐ ๋๋ฌธ์ friend๋ก ์ ์ธ๋์ด์ผ ํ๋ค.
51.
SPREADSHEETCELL์ ๋ง์ ๊ธฐ๋ฅ
๊ตฌํ ์ ์ฝ๋๋ ๋ฌธ์ ์์ด ์ปดํ์ผ๋๊ณ ์คํ๋ ๋๋ค. ๊ทธ๋ฐ๋ฐ operator+ ํจ์๊ฐ ํธ์ถ๋์ง ์๋๋ค. ์ ์ฝ๋๋ 4.5์ 5.5์ ๋ํด ๋ณดํต์ double ํ์ ๋ง์ ์ ๋จผ์ ์ํํ์ฌ ๊ฒฐ๊ณผ์ ์ผ๋ก 10์ด ๋๋ค. ๊ทธ ๋ค ์ปดํ์ผ๋ฌ๋ double ํ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๋ ์์ฑ์๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋ฌต์์ ์ธ ๋ณํ์ ์ํํ์ฌ SpreadsheetCell์ ์์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ๋ค์ ๋์ ์ฐ์ฐ์๋ฅผ ํธ์ถํ๋ค.
52.
์ฐ์ ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ C++์์๋
์ค๋ฒ๋ก๋ฉ๋ ์ฐ์ฐ์๊ฐ ์ผ๋ฐ ์์์ ์ด๊ธ๋๋์ง ์ด๋ค์ง ๊ฒ์ฌํ์ง ์๋๋ค. ๋ฐ๋ผ์ ๊ฐ ์ฐ์ฐ ๊ธฐํธ๊ฐ ๊ฐ์ง ์ผ๋ฐ์ ์ธ ์๋ฏธ์์ ๊ทธ ๊ธฐ๋ฅ์ ์ฝ๊ฒ ์ ์ถํ ์ ์๋๋ก ๊ตฌํํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค. ๋ํ C++์์๋ ์ฐ์ฐ์์ ์ฐ์ ์์๋ฅผ ๋ฐ๊ฟ ์ ์๋ค. ์๋ฅผ ๋ค์ด *๊ณผ /๋ +, -๋ณด๋ค ์ฐ์ ํด์ ์คํ๋๋ค. 0์ผ๋ก ๋๋๊ธฐ๋ฅผ ๋ฐฉ์งํ๋ ๋ถ๋ถ. ๋ง์ฝ 0์ผ๋ก ๋๋๋ ค ํ๋ฉด ์ต์ ์ ์ ๋ฐ์์ํจ๋ค.
53.
์ฐ์ ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ ์ถ์ฝํ
์ฐ์ ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ์ ๊ธฐ๋ณธ ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ๊ณผ ๋ ๊ฐ์ง ๋ฉด์์ ๋ค๋ฅด๋ค. ์ฒซ ๋ฒ์งธ ์ฐจ์ด์ ์, ์์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ง ์๊ณ ์ขํญ ๊ฐ์ฒด๋ฅผ ๋ณ๊ฒฝํ๋ค๋ ์ ์ด๋ค. ๋ ๋ฒ์งธ ์ฐจ์ด์ ์, ๋ณ๊ฒฝ๋ ๊ฐ์ฒด์ ๋ํ ์ฐธ์กฐ ํ์ ์ ๊ฒฐ๊ณผ ๋ฆฌํด ๊ฐ์ผ๋ก ์์ฑํ๋ค๋ ์ ์ด๋ค. 0์ผ๋ก ๋๋๊ธฐ๋ฅผ ๋ฐฉ์งํ๋ ๋ถ๋ถ. ๋ง์ฝ 0์ผ๋ก ๋๋๋ ค ํ๋ฉด ์ต์ ์ ์ ๋ฐ์์ํจ๋ค.
54.
๋น๊ต ์ฐ์ฐ์์ ์ค๋ฒ๋ก๋ฉ >,
<, ==๊ณผ ๊ฐ์ ๋น๊ต ์ฐ์ฐ์๋ ๊ฐ์ฒด๊ฐ ์์ ์ ํ์ฉํ๊ธฐ ์ข์ ์ฐ์ฐ์๋ค์ด๋ค. ๊ธฐ๋ณธ ์ฐ์ ์ฐ์ฐ์์์์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ด๋ค ์ฐ์ฐ์๋ ์ ์ญ ํจ์๋ก ๋ง๋ค์ด ์ขํญ๊ณผ ์ฐํญ ์ด๋ ์ชฝ ๊ฐ์ด๋ ๋ฌต์์ ์ธ ๋ณํ์ ํ ์ ์๋๋ก ํ๋ค.
55.
์์ ๋ ์ธํฐํ์ด์ค ๋ง๋ค๊ธฐ ์ธํฐํ์ด์ค
ํด๋์ค์ ๊ตฌํ ํด๋์ค์ ํ์ฉ
56.
์ธํฐํ์ด์ค ํด๋์ค์ ๊ตฌํ
ํด๋์ค์ ํ์ฉ ํด๋์ค๋ฅผ ๋์์ธํ ๋๋ ์ถ์ํ ์์น์ ์ ์ฉํ์ฌ ๊ตฌํ๊ณผ ์ธํฐํ์ด์ค๋ฅผ ๋ถ๋ฆฌํด์ผ ํ๋ค. ๊ตฌ์ฒด์ ์ผ๋ก๋ ๋ชจ๋ ๋ฐ์ดํฐ ๋ฉค๋ฒ๋ค์ protected๋ private๋ก ์ ์ธํ๊ณ ์ธ๋ถ์์ ๋ฉค๋ฒ๋ค์ ์ ๊ทผํ ํ์๊ฐ ์์ ๋๋ get/set ๋ฉ์๋๋ฅผ ์ด์ฉํ๋ค. ํ์ง๋ง ํด๋์ค ์ ์ ๋ฌธ๋ฒ์ public ์ธํฐํ์ด์ค์ private ๋ฐ์ดํฐ ๋ฉค๋ฒ ๋ฐ ๋ฉ์๋๋ฅผ ํ ํด๋์ค์์ ์ ์ํ๋๋ก ํ๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๊ตฌํ์ด ์ฌ์ฉ์์๊ฒ ๋ ธ์ถ๋๋ค.
57.
์ธํฐํ์ด์ค ํด๋์ค์ ๊ตฌํ
ํด๋์ค์ ํ์ฉ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ํด๋์ค๋ฅผ ๋ง๋ค ๋๋ง๋ค ๋งค๋ฒ ์ธํฐํ์ด์ค ํด๋์ค์ ๊ตฌํ ํด๋์ค๋ฅผ ๋ ๊ฐ์ฉ ๋ง๋๋ ๊ฒ์ด๋ค. ๊ตฌํ ํด๋์ค๋ ์๋ ๋ง๋ค๋ ๋ฐฉ์์ ํด๋์ค์ ๊ฐ๋ค. ์ธํฐํ์ด์ค ํด๋์ค๋ ๊ตฌํ ํด๋์ค์ public ๋ฉ์๋๋ง์ ๋ด๋๋ค. ์ด๋ ๊ฒ ํด๋์ค๋ฅผ ๋ถ๋ฆฌํ๋ฉด ๊ตฌํ ํด๋์ค๊ฐ ์ด๋ป๊ฒ ๋ฐ๋๋ public ์ธํฐํ์ด์ค ํด๋์ค์๋ ๋ณํ๊ฐ ์์ผ๋ฏ๋ก ์ปดํ์ผ์ ๋ค์ ํด์ผ ํ ํ์๋ฅผ ์ค์ผ ์ ์๋ค. ๋จผ์ ๊ธฐ์กด์ Spreadsheet ํด๋์ค ์ด๋ฆ์ SpreadsheetImpl๋ก ๋ฐ๊พผ๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ก์ด Spreadsheet ํด๋์ค๋ฅผ ์ ์ํ๋ค. ํ ๊ฐ์ง ๋ค๋ฅธ ์ ์ Spreadsheet ์์ฑ์๋ก ์ด๊ธฐํํ const ๋ฉค๋ฒ๊ฐ ์์ด์ก๊ธฐ ๋๋ฌธ์ ๋ํดํธ ํ๋ผ๋ฏธํฐ๋ฅผ ์ค์ ํ ์ ์์ด ์์ฑ์๊ฐ ๋ ๊ฐ๋ก ๋๋์๋ค. ๋์ SpreadsheetImpl ํด๋์ค์์ ํด๋น ๋ํดํธ ๊ฐ์ ์ค์ ํ๋ค.
58.
์ธํฐํ์ด์ค ํด๋์ค์ ๊ตฌํ
ํด๋์ค์ ํ์ฉ Spreadsheet ๋ฉ์๋์ ๊ตฌํ๋ถ๋ ๋จ์ง SpreadsheetImpl ๊ฐ์ฒด์ ํด๋น ๋ฉ์๋ ํธ์ถ์ ์ค๊ณํด์ค๋ค. ์ด๋ฌํ ํ ํฌ๋์ ์ธํฐํ์ด์ค์ ๊ตฌํ์ ์์ ํ๊ฒ ๋ถ๋ฆฌํด์ฃผ๋ฉฐ ์ปดํ์ผ ์๊ฐ์ ๋จ์ถํด์ฃผ๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ๊ฐ๋ ฅํ๋ค. ๋ ๋์๊ฐ์ ํ๋ฆฌ์ปดํ์ผ๋ ํค๋(Pre-Compiled Header)๋ฅผ ์ด์ฉํด ๊ธฐ๋ณธ์ ์ธ ๋น๋ ์๊ฐ ์์ฒด๋ฅผ ์ค์ผ ์๋ ์๋ค.
Baixar agora