๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ(43)
-
01. [C++] STL (Standard Template Library) - Vector
STL (Standard Template Library) ํ๋ก๊ทธ๋๋ฐ์ ํ์ํ ์๋ฃ๊ตฌ์กฐ์ ์๊ณ ๋ฆฌ์ฆ์ ํ ํ๋ฆฟํํ์ฌ ์ ๊ณตํ๋ C++ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. (์ปจํ ์ด๋, ๋ฐ๋ณต์, ์๊ณ ๋ฆฌ์ฆ, ํจ์๊ฐ์ฒด 4๊ฐ์ง๋ฅผ ์ ๊ณตํ๋ค.) [ ์ปจํ ์ด๋ ๋ถ๋ฅ ] 1. ์์ ๋ฐฐ์น ๋ฐฉ์์ ๋ฐ๋ผ ํ์ค ์ํ์ค ์ปจํ ์ด๋ (์ ํ์ ์ธ ๊ตฌ์กฐ) : vector, list, deque ํ์ค ์ฐ๊ด ์ปจํ ์ด๋ (๋น์ ํ์ ์ธ ๊ตฌ์กฐ) : map, multimap, set, multiset 2. ๋ฉ๋ชจ๋ฆฌ ์ ์ฅ ๋ฐฉ์ ๋ฐฐ์ด ๊ธฐ๋ฐ (์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ) : vector, deque ๋ ธ๋ ๊ธฐ๋ฐ (๋น ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ) : list, map , multimap, set, multiset 3. ์ปจํ ์ด๋ ์ด๋ํฐ ๊ธฐ์กด ์ปจํ ์ด๋์ ๊ธฐ๋ฅ์ ์ ํํ๊ฑฐ๋ ์ถ์์ํจ ์ปจํ ์ด๋์ด๋ค. queu..
2019.06.20 -
22. [C++] ํ ํ๋ฆฟ (Template)
ํ ํ๋ฆฟ (Template) ์๋ฃํ์ ์ฝ๋งค์ด์ง ์๊ณ ๋ชจ๋ ํธํํธ๋๋ก ํ๋ก๊ทธ๋จ์ ์์ฑํ๊ฒ ๋์์ฃผ๋ C++ ๊ธฐ๋ฅ. 1. ํจ์ ํ ํ๋ฆฟ ํจ์ ํ ํ๋ฆฟ์ ํจ์๋ฅผ ๋ง๋ค์ด ๋ธ๋ค. ํจ์์ ๊ธฐ๋ฅ์ ๊ฒฐ์ ๋์ด ์์ง๋ง, ์๋ฃํ์ ๊ฒฐ์ ๋์ด์์ง ์๋ค. ๋์ค์ T๋ฅผ ๋์ ํด์ ์ค์ ์๋ฃํ์ ๊ฒฐ์ ํด์ผํ๋ค. (typename์ ๋์ ํด์ class๋ฅผ ์ฌ์ฉํ ์๋ ์๋ค. T๋ผ๋ ๋ฌธ์ ๋์ ๋ค๋ฅธ ๋ฌธ์๋ฅผ ์ฌ์ฉํด๋ ๋๋ค.) ์์ ๋ณด์ธ ๋ค์์ ์ ์๋ฅผ ๊ฐ๋ฆฌ์ผ 'ํจ์ ํ ํ๋ฆฟ(funtion template)'์ด๋ผ ํ๋ค. ๋ฐ๋ฉด, ์์ ํ ํ๋ฆฟ์ ๊ธฐ๋ฐ์ผ๋ก ์ปดํ์ผ๋ฌ๊ฐ ๋ง๋ค์ด ๋ด๋ ํจ์๋ค์ 'ํ ํ๋ฆฟ ํจ์(template funtion)'์ด๋ผ ํ๋ค. int Add(int a, int b) { return a+b; } 2. ๋ ๊ฐ ์ด์์ typename ์ง์ ํ ํ๋ฆฟ์..
2019.06.18 -
21. [C++] ์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ
์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ C++์์๋ ํจ์ ๋ฟ๋ง ์๋๋ผ ์ฐ์ฐ์๋ ์ค๋ฒ๋ก๋ฉ์ด ๊ฐ๋ฅํ๋ค. ์ฌ์ฉ์๊ฐ ๊ธฐ์กด์ ์ฐ์ฐ์๋ฅผ ์ฌ์ ์ํ๋ ํด๋์ค ๋ฌธ๋ฒ์ด๋ค. ์๋ก์ด ์ฐ์ฐ์๋ฅผ ์ฐฝ์กฐํ๋ ๋ฌธ๋ฒ์ ์๋๋ค. ๊ธฐ์กด ์ฐ์ฐ์์ ๋ณธ์ง์ ํ๋ ค์ ์๋๋ค. ์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ ๋ฐฉ๋ฒ์๋ ๋ค์ ๋ ๊ฐ์ง๊ฐ ์๋ค. 1. ๋ฉค๋ฒํจ์์ ์ํ ๋ฐฉ๋ฒ 2. ์ ์ญํจ์์ ์ํ ๋ฐฉ๋ฒ. ๋ฉค๋ฒ ํจ์ ๊ธฐ๋ฐ์ผ๋ก ์ค๋ฒ๋ก๋ฉ๋ ํจ์๊ฐ ์ ์ญํจ์ ๊ธฐ๋ฐ์ผ๋ก ์ค๋ฒ๋ก๋ฉ๋ ํจ์๋ณด๋ค ์ฐ์ ์ ํธ์ถ๋๋ค. [ 1. ๋ฉค๋ฒ ํจ์์ ์ํ ๋ฐฉ๋ฒ ] 'operator' ํค์๋์ '์ฐ์ฐ์'๋ฅผ ๋ฌถ์ด์ ํจ์์ ์ด๋ฆ์ ์ ์ํ๋ฉด, ํจ์์ ์ด๋ฆ์ ์ด์ฉํ ํจ์ ํธ์ถ ๋ฟ๋ง ์๋๋ผ, ์ฐ์ฐ์๋ฅผ ์ด์ฉํ ํจ์์ ํธ์ถ๋ ํ์ฉํด์ค๋ค. ๋ง์ ์ฐ์ฐ์, ๋บ์ ์ฐ์ฐ์์ ๋ํด์ ์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ์ ํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค. [ ์ฆ๊ฐ ์ฐ์ฐ์ ์ค๋ฒ๋ก๋ฉ ] ์ฐ์ฐ..
2019.06.13 -
20. [C++] ํด๋์ค ์์๊ณผ ๋คํ์ฑ
1. ์ค๋ฒ๋ผ์ด๋ฉ (overriding) ๋ถ๋ชจ์ ๋ฉ์๋(๋ฉค๋ฒ ํจ์)๋ฅผ ์์ ํด๋์ค์๊ฒ ๋๊ฐ์ด ์์ฑํ๋ค. ๊ฐ์ ๋ฉ์๋๋ฅผ ๊ฐ์ฒด์ ๋ฐ๋ผ ์ฌ์ ์ ํ๋ค. (๋ชฉ์ - ํจ์ ์ฌ์ ์, ๋คํ์ฑ.) (์ค๋ฒ๋ก๋ฉ : ๊ฐ์ ์ด๋ฆ์ ํจ์๋ฅผ ์ธ์์ ๋ฐ๋ผ ์ฌ์ ์ ๋ชฉ์ - ํจ์ ์ฌ์ ์) ์ค๋ฒ๋ก๋ฉ ์ค๋ฒ๋ผ์ด๋ฉ ๋ฌธ ๋ฒ ํจ์ ๋ฌธ๋ฒ ํด๋์ค ๋ฌธ๋ฒ ํจ์ ๋ช ๊ฐ์์ผ ์ฌ์ ์ ๋ถ๋ชจ์ ๊ฒ๊ณผ ๊ฐ์์ผ ํ๋ค. ์ธ์ ํ์ ๋ฌ๋ผ์ผ ์ฌ์ ์ ๋ถ๋ชจ์ ๊ฒ๊ณผ ๊ฐ์์ผ ํ๋ค. ์ธ์ ๊ฐ์ ๋ฌ๋ผ์ผ ์ฌ์ ์ ๋ถ๋ชจ์ ๊ฒ๊ณผ ๊ฐ์์ผ ํ๋ค. ๋ฐํ ํ์ ์ฌ์ ์์ ์๋ฌด ์ฐ๊ด ์๋ค. ๋ถ๋ชจ์ ๊ฒ๊ณผ ๊ฐ์์ผ ํ๋ค. ๋ชฉ ์ ํจ์ ์ฌ์ ์์ ๋คํ์ฑ ๋ชฌ์คํฐ ํด๋์ค๋ฅผ ์ถ๊ฐํ์ฌ ๋ค์๊ณผ ๊ฐ์ ์์๊ด๊ณ๋ฅผ ๊ตฌ์ฑํ์๋ค. ์ค๋ฒ๋ผ์ด๋ฉ์ ํตํด์ ๊ฐ ๊ฐ์ฒด๋ณ๋ก ๊ฐ์ ์ด๋ฆ์ ํจ์๊ฐ ์ฌ์ ์ ๋๋ค. (ํด๋์ค์ ๋คํ์ฑ : ๊ฐ๊ธฐ ๋ค๋ฅธ ..
2019.06.12