![(c++) ๋์์ธ ํจํด 01(์ฑ๊ธํค, ์ถ์ ํฉํ ๋ฆฌ, ์ต์ ๋ฒ, ํ๋ก์, ์ด๋ํฐ)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbR993X%2FbtsBOeIEy2t%2FXdkvm5dk5X0bUReNysJwKk%2Fimg.png)
1. ์ฑํดํค(singletion) ํจํด ํ๋์ ํด๋์ค์ ์ค์ง ํ๋์ ์ธ์คํด์ค๋ง ๊ฐ์ง๋ ํจํด์ด๋ค. ๋ณดํต ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ๋ชจ๋์ ๋ง์ด ์ฌ์ฉ๋๋ค. ํ๋์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด ๋๊ณ ํด๋น ์ธ์คํด์ค๋ฅผ ๋ค๋ฅธ ๋ชจ๋๋ค์ด ๊ณต์ ํ๋ฉฐ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ธ์คํด์ค๋ฅผ ์์ฑํ ๋ ๋๋ ๋น์ฉ์ด ์ค์ด๋๋ ์ฅ์ ์ด ์๋ค. ํ์ง๋ง ์์กด์ฑ์ด ๋์์ง๋ค๋ ๋จ์ ์ด ์๋ค. ํ๋ก๊ทธ๋จ์ ๊ตฌํํ ๋ ํด๋์ค์ ์ธ์คํด์ค๊ฐ ๋จ ํ๋๋ง ์กด์ฌํ๊ฒ ๋ง๋ค๋ ค๋ฉด ์ฑ๊ธํด ํจํด์ ์ ์ฉํ๋ฉด ๋๋ค. ์ฑ๊ธํด ํจํด์ ์ ํธ๋ฆฌํฐ ํด๋์ค ๊ตฌํ์ ์ ํฉํ๋ค. ๋ง์ ์ดํ๋ฆฌ์ผ์ด์ ์์๋ ์ํ ์ ๋ณด, ๋๋ฒ๊น ๋ฐ์ดํฐ, ํน์ ํ ์ง์ ์์ ๋ฐ์ํ ์๋ฌ๋ฅผ ๊ธฐ๋กํ๋ ํด๋์ค์ธ ๋ก๊ฑฐ(logger)๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ๋ก๊ฑฐ ํด๋์ค๋ ์ฑ๊ธํด์ผ๋ก ๊ตฌํํ๋ ๊ฒ์ด ์ข๋ค. ๊ตฌํ ๋ฐฉ๋ฒ: (1). static ๋ฉ์๋๋ง ๊ฐ์ง..
![(c++17) decltype, ๋ก ์คํธ๋ง ๋ฆฌํฐ๋ด, static, const, extern, mutable, constexpr, ํ์
์จ๋ฆฌ์ด์ค, ์ค์ฝํ, ๋ ํผ๋ฐ์ค, ์ดํธ๋ฆฌํํธ](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMrGkR%2FbtsBQTwYgg7%2FsUeQ9gzKwFbbDdsJTzwjwk%2Fimg.png)
1. decltype ํค์๋ decltype ํค์๋๋ ์ธ์๋ก ์ง์ ํ ํํ์์ ํ์ ์ ์์๋ธ๋ค. int x = 123; decltype(x) y = 456; ์ด๋ ๊ฒ ์์ฑํ๋ฉด ์ปดํ์ผ๋ฌ๋ y์ ํ์ ์ด x์ ํ์ ์ธ int๋ผ๊ณ ์ถ๋ก ํ๋ค. decltype์ ๋ ํผ๋ฐ์ค๋ const์ง์ ์๋ฅผ ์ญ์ ํ์ง ์๋๋ค๋ ์ ์์ auto์ ๋ค๋ฅด๋ค. ํ ํ๋ฆฟ์ ์ฌ์ฉํ ๋ ์๋นํ ๊ฐ๋ ฅํ ํจ๊ณผ๋ฅผ ๋ฐํํ๋ค. 2. ๋ก ์คํธ๋ง ๋ฆฌํฐ๋ด(raw string liternal) ์ฌ๋ฌ ์ค์ ๊ฑธ์ณ ์์ฑํ ์คํธ๋ง ๋ฆฌํฐ๋๋ก์, ๊ทธ ์์ ๋ด๊ธด ์ธ์ฉ๋ถํธ๋ฅผ ์ด์ค์ผ์ดํ ์คํ์ค๋ก ํํํ ํ์๊ฐ ์๊ณ , \t, \n๊ฐ์ ์ด์ค์ผ์ดํ ์ํ์ค๋ฅผ ์ผ๋ฐ ํ ์คํธ๋ก ์ทจ๊ธํ๋ค. ๋ฌธ๋ฒ: R " ( ) " const char* str = R"(Hello "Pinko")" ; 3. stati..
![(c++17) ์ ์ฒ๋ฆฌ ์ง์์, if-switch ์ด๋์
๋ผ์ด์ , __func__, ๊ตฌ์กฐ์ ๋ฐ์ธ๋](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5HRlo%2FbtsBUzxJyOY%2F8iW6iIWN2dQMkVHyO9jiGk%2Fimg.png)
1. ์ ์ฒ๋ฆฌ ์ง์์ C++๋ก ์์ฑ๋ ์์ค ์ฝ๋๋ฅผ ํ๋ก๊ทธ๋จ์ผ๋ก ๋ง๋๋ ๋น๋(build)์์ ์ ์ธ ๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ฉฐ, ์ ์ฒ๋ฆฌ ์ง์์(directive)๋ ์ ์ฒ๋ฆฌ๊ธฐ์ ์ ๋ฌํ ์ฌํญ์ ํํํ๋ฉฐ, '#' ๋ฌธ์๋ก ์์ํ๋ค. ๋น๋ ์์ : ์ ์ฒ๋ฆฌ(Preprocess) -> ์ปดํ์ผ(complie) -> ๋งํฌ(link) 2. main ( ) ํจ์ main ํจ์๋ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฐ์ง ์๊ฑฐ๋, ๋ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฐ๋๋ก ์์ฑํ ์ ์๋ค. int main (int argc, char* argv[]) - argc: ํ๋ก๊ทธ๋จ์ ์ ๋ฌํ ์ธ์ ๊ฐ์ - argv[]: ์ ๋ฌํ ์ธ์์ ๊ฐ์ ๋ด๋ ๋ฐฐ์ด - argv[0]์๋ ํ๋ก๊ทธ๋จ ์ด๋ฆ์ด ๋ด๊น. * ์ฃผ์: ์ค์ ๋งค๊ฐ๋ณ์๋ ์ธ๋ฑ์ค 1๋ถํฐ ์์ํ๋ค. 3. (C++17) std::byte c++17 ์ด์ ์๋ ..
![(OS) ํ๋ก์ธ์ค์ ์ค๋ ๋](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbanrtX%2FbtrIVf8DrqZ%2FCcNKJSs1lHgEkq3xKPMgx0%2Fimg.png)
์ฐ๋ฆฌ๊ฐ ํํ ๋งํ๋ ํ๋ก๊ทธ๋จ์ด๋ ํ์ผ์ด ์ ์ฅ ์ฅ์น์ ์ ์ฅ๋์ด ์์ง๋ง ๋ฉ๋ชจ๋ฆฌ์๋ ์ฌ๋ผ๊ฐ ์์ง ์์ ์ํ์ด๋ฉฐ ์ปดํจํฐ์์ ์คํ๋๋ ๋ช ๋ น์ด ๋ชจ์์ด ๋ค์ด ์๋ ๋ฐ์ดํฐ ๋ฉ์ด๋ฆฌ๋ฅผ ์๋ฏธํ๋ค. ๊ทธ๊ฒ์ ๋๋ธํด๋ฆญํ์ฌ ์คํ์ํค๊ธฐ ์ ๊น์ง๋ ํ๋ก๊ทธ๋จ ์์ฒด๋ก๋ ์๋ฌด๋ฐ ์๋ฏธ๊ฐ ์๋ค. ํ๋ก๊ทธ๋จ์ ์คํํ๋ฉด ํ๋ก๊ทธ๋จ ์์ ๋ค์ด ์๋ ๋ช ๋ น์ด๊ฐ ํ ์ค์ฉ ์คํ๋๋ฉด์ ํ๋ก๊ทธ๋จ์ ๋ญ๊ฐ ํ๋์ ํ๋ ์ํ๊ฐ ๋๋ค. ์ด๋ฅผ ํ๋ก์ธ์ค๋ผ๊ณ ํ๋ค. Q. ํ๋ก์ธ์ค์ ์ค๋ ๋์ ๋ํด์ ์ค๋ช ํด์ฃผ์ธ์. 1. ํ๋ก์ธ์ค(Process) - ์ด์์ฒด์ ๋ก๋ถํฐ ์์(ํ๋ก์ธ์, ํ์ํ ์ฃผ์ ๊ณต๊ฐ, ๋ฉ๋ชจ๋ฆฌ ๋ฑ)์ ํ ๋น๋ฐ๋ ์์ ์ ๋จ์์ด์ ์ปดํจํฐ์์ ์คํ๋๊ณ ์๋ ํ๋ก๊ทธ๋จ์ ๋งํ๋ฉฐ CPU์ค์ผ์ค๋ง์ ๋์์ด ๋๋ ์์ (task)์ด๋ผ๋ ์ฉ์ด์ ๊ฑฐ์ ๊ฐ์ ์๋ฏธ๋ก ์ฐ์ธ๋ค. - ํ๋ก๊ทธ๋จ์ด ๋ฉ๋ชจ..
![(OS) ์ด์์ฒด์ ์ ๋ฉ๋ชจ๋ฆฌ](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQ5rj4%2FbtrI1ivO2bk%2F9wWqX5ykTXNmpmWKx1cUG1%2Fimg.png)
์ด์์ฒด์ OS(Operating System)๋ ์ปดํจํฐ ์์คํ ์ ์์๋ค์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ์ฌ ์ฑ๋ฅ์ ๋์ด๊ณ , ์ฌ์ฉ์์๊ฒ ์ปดํจํฐ ์ฌ์ฉ์ ํธ์์ฑ์ ์ ๊ณต ํ๋ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ ์งํฉ์ ๋๋ค. ๋ํ์ ์ธ ์ด์์ฒด์ ๋ Window, ios, Linux ๊ฐ ์์ต๋๋ค. GUI (grapic user interface) ์ฌ์ฉ์๊ฐ ์ ์์ฅ์น์ ์ํธ ์์ฉํ ์ ์๋๋ก ํ๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค์ ํ ํํ, ๋จ์ ๋ช ๋ น์ด ์ฐฝ์ด ์๋ ์์ด์ฝ์ ๋ง์ฐ์ค๋ก ํด๋ฆญํ๋ ๋จ์ํ ๋์์ผ๋ก ์ปดํจํฐ์ ์ํธ์์ฉํ ์ ์๋๋ก ํด์ค๋ค. ์์คํ ์ฝ (system call) - ์ถ์ํ ๊ณ์ธต - ์ด์์ฒด์ ๋ ์ปค๋๋ชจ๋(Kernel Mode)์ ์ฌ์ฉ์ ๋ชจ๋(User Mode)๋ก ๋๋๋๋ฐ ์ด๋ฅผ ์ฐ๊ฒฐํ๋ ์ญํ ์ ํ๋ค. ์ปค๋์ ์ฌ์ฉ์๋ ์์ฉํ๋ก๊ทธ๋จ์ผ๋ก๋ถํฐ ์ปดํจํฐ ์์์ ๋ณดํธํ๊ธฐ..
![(OS) ์๋ฃํ, ๋ฐ์ดํฐ ํฌ๊ธฐ ๋ฐ ์ ์ ์ ํ <limits>](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIV1KL%2FbtrIXP2sKZX%2FV19KQ2v8xffAq9VJmKqZe1%2Fimg.png)
C ํ์ค ํค๋ ํ์ผ ์ ์ ์๋์ด ์์ต๋๋ค. C++ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํค๋ ์๋ ๋ฅผ ๋น๋กฏํ ๊ฐ ํฌํจ CHAR_BIT ๋นํธ ํ๋๊ฐ ์๋ ๊ฐ์ฅ ์์ ๋ณ์์ ๋นํธ ์์ ๋๋ค. 8 SCHAR_MIN signed char ํ์ ๋ณ์์ ์ต์๊ฐ์ ๋๋ค. -128 SCHAR_MAX signed char ํ์ ๋ณ์์ ์ต๋๊ฐ์ ๋๋ค. 127 UCHAR_MAX unsigned char ํ์ ๋ณ์์ ์ต๋๊ฐ์ ๋๋ค. 255(0Xff) CHAR_MIN char ํ์ ๋ณ์์ ์ต์๊ฐ์ ๋๋ค. –128, /J ์ต์ ์ด ์ฌ์ฉ๋ ๊ฒฝ์ฐ 0 CHAR_MAX char ํ์ ๋ณ์์ ์ต๋๊ฐ์ ๋๋ค. 127, /J ์ต์ ์ด ์ฌ์ฉ๋ ๊ฒฝ์ฐ, 255 MB_LEN_MAX ์ฌ๋ฌ ๋ฌธ์ ์์์์์ ์ต๋ ๋ฐ์ดํธ ์์ ๋๋ค. 5 SHRT_MIN short ํ์ ๋ณ์์ ์ต์๊ฐ์ ๋๋ค. ..
![[Algorithm/Shortest Path] A* ์๊ณ ๋ฆฌ์ฆ - ๊ตฌํC++](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCbEpR%2FbtsIJVVU2cv%2FnEKdK1UFnKOzA6uD9l9lSk%2Fimg.jpg)
์คํฐ๋์์ A* ์๊ณ ๋ฆฌ์ฆ์ ํ ๋ฒ ์์ฑํด๋ณด๊ณ ๊ฐ๋จํ๊ฒ ์ฝ์๋ก ๋์ด๋ณด๊ณ .. ์ ๋ํฐ๋ก ์ ์ฉํด๋ณด๊ธฐ๋ก ํ์๋ค. ์ ๋ํฐ๋ก ์ฎ๊ธฐ๋ ์์ ๋ฒ์จ๋ถํฐ ๊ฑฑ์ ์ด ๋๋ค. ์ผ๋จ A*์๊ณ ๋ฆฌ์ฆ์ด ๋ญ์ง ์ ๋ฆฌ๋ฅผ ํด๋ณด์ ..A* ์๊ณ ๋ฆฌ์ฆ์ ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ํ์ฅํ์ฌ ๋ง๋ค์ด์ง ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฃผ์ด์ง ์ถ๋ฐ ๊ผญ์ง์ ์์๋ถํฐ ๋ชฉํ ๊ผญ์ง์ ๊น์ง ๊ฐ๋ ์ต๋จ๊ฒฝ๋ก๋ฅผ ์ฐพ์๋ด๋ ๊ทธ๋ํ ํ์ ์๊ณ ๋ฆฌ์ฆ ์ค ํ๋์ด๋ค. ์ฃผ๋ก ๊ฒ์์์ ๋ชฌ์คํฐ๊ฐ ํ๋ ์ด์ด๋ฅผ ๋ชฉํ์ง์ ์ผ๋ก ์ด๋ํ๊ฑฐ๋ ์๋ ์ฌ๋ฅ ๊ฒ์์์ ํ๋ ์ด์ด๊ฐ ํ๊ฒ(๋ชฌ์คํฐ๋ ๋ค๋ฅธ PC)์ ํฅํด ์ด๋์ํฌ ๋ ์ฌ์ฉํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ์๊ณ ๋ฆฌ์ฆ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ A* ์๊ณ ๋ฆฌ์ฆ๋ชฉํ์ ์์์ -> ๋๋จธ์ง ๋ชจ๋ ์ ์ ๋ค๊น์ง์ ์ต๋จ ๊ฑฐ๋ฆฌ์์์ -> ๋ชฉํ์ ๊น์ง์ ์ต๋จ ๊ฑฐ๋ฆฌ ์ฐจํ ๊ฒฝ๋ก ๋์ถ์ ์ํ ํจ์f(n)ํ์ฌ ๋ ธ๋์์ ๊ฐ๊น์ด ๋ ธ๋๋ถํฐ..
![[C++] ๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ(์ ๋ฌธ๊ฐ๋ฅผ ์ํ C++ , Chapter 27 ์ ๋ฆฌ )](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fba5nGB%2FbtsBMV9WEn1%2FTLJxy1y9c7W7VFmWaMdpcK%2Fimg.png)
์๋ ํ์ธ์. ํํฌ์ฝ๋ฅ์ ๋๋ค. ์ค๋์ ๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ ์ ๋ฆฌ ๋ด์ฉ์ ๋๋ค. ๊ธด๊ธ ์ฃผ์ ํด์ฃผ์ธ์. ใ ใ ;; ์ ๊ฐ ๋ฉํฐ ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ ์ด ๋ถ์กฑํด์ ์ ๋ฌด ์ค ๋ํ์์ ์ดํด ๋ชปํ ์ ์ด ๋ช ๋ฒ ์์ด์ ํ ๋ฒ ์ซ ์ ๋ฆฌ ํด๋ณด์์ต๋๋ค. * ๋ฉํฐ์ค๋ ๋ ํ๋ก๊ทธ๋๋ฐ - ํ๋ก์ธ์ ์ ๋์ด ์ฌ๋ฌ ๊ฐ ์ฅ์ฐฉ๋ ์ปดํจํฐ ์์คํ ์ ์ค์ํ ๊ธฐ๋ฒ. - ์์คํ ์ ์๋ ์ฌ๋ฌ ํ๋ก์ธ์ ์ ๋์ ๋ณ๋ ฌ๋ก ์ฌ์ฉ๊ฐ๋ฅ. * ์์คํ ์ ํ๋ก์ธ์ ์ ๋์ด ์ฅ์ฐฉ๋๋ ๋ฐฉ์์ ๋ค์ํจ. 1. ๋ ๋ฆฝ์ ์ธ cpu center processor unit๋ฅผ ๋ด์ ํ๋ก์ธ์ ์นฉ์ด ์ฌ๋ฌ ๊ฐ ๋ฌ๋ฆฌ๋ ๋ฐฉ์. 2. ํ ํ๋ก์ธ์ ์นฉ ์์ ์ฝ์ดcore๋ผ ๋ถ๋ฅด๋ ๋ ๋ฆฝ์ ์ธ cpu๊ฐ ์ฌ๋ฌ๊ฐ ์๋ ๋ฐฉ์. 3. ์ ๋๊ฐ๋ฅผ ํผํฉํ๋ ๋ฐฉ์ - ์ ์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ ๋ฌ๋ฆฐ ํ๋ก์ธ์๋ฅผ - ๋ฉํฐ์ฝ์ด ํ๋ก์ธ์ multi..
![[c++]'์ ๋ฌธ๊ฐ๋ฅผ ์ํ C++17'์ ๊ณต๋ถํ๋ฉฐ ์ ๋ฆฌ(ing...)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqIXyZ%2FbtsBQx2eGiD%2F5PC76F0JjSBNlZebDw0ky1%2Fimg.png)
1. ํจ์ ๋งค๊ฐ๋ณ์์ ๋ง์ฐฌ๊ฐ์ง๋ก ํ ํ๋ฆฟ ๋งค๊ฐ๋ณ์์ ๊ธฐ๋ณธ๊ฐ์ ์ง์ ํ ์ ์๋ค. template class Pinko { ... } - optional ์ ์ ์๋ผ ์์ผ๋ฉฐ, ์ด๋ค ํ์ ์ ๊ฐ์ด ์๊ฑฐ๋ ์์ ์ ์๋ ๊ฒ์ ํํํ๋ค. 2. ํ ํ๋ฆฟ ๋งค๊ฐ๋ณ์๋ก ํ ํ๋ฆฟ์ ๋ฐ์ผ๋ ค๋ฉด ํ ํ๋ฆฟ ํ ํ๋ฆฟ ๋งค๊ฐ๋ณ์(template template parameter)๋ผ๋ ํน์ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค. - ํ ํ๋ฆฟ ํ ํ๋ฆฟ ๋งค๊ฐ๋ณ์๋ฅผ ์ง์ ํ๋ ๋ฐฉ์์ ์ผ๋ฐ ํจ์์ ๋งค๊ฐ๋ณ์์ ํจ์ ํฌ์ธํฐ๋ฅผ ์ง์ ํ๋ ๋ฐฉ์๊ณผ ๋น์ทํ๋ค. - ์ ์ํ ์ปจํ ์ด๋(ํ ํ๋ฆฟ ์ ์ธ๋ถ: templateclass vector)๋ฅผ ํด๋์ค ์ด๋ฆ(vector)์ ๋งค๊ฐ๋ณ์ ์ด๋ฆ (Contatiner)์ผ๋ก ๋ฐ๊พผ๋ค. template class vector{}; tmeplate class ..
![[C++] ์ ๋ค๋ฆญ ์๊ณ ๋ฆฌ์ฆ ๋ชจ์](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcd5BVw%2FbtsBHtlT8NL%2FzPIJg86YasPmDmEkxMiea1%2Fimg.png)
์ ๋ค๋ฆญ ์๊ณ ๋ฆฌ์ฆ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ ๊ณตํ๋ ์๊ณ ๋ฆฌ์ฆ์ ํจ์ ํ ํ๋ฆฟ์ผ๋ก ๊ตฌํ๋ผ ์์ด์ ๋ค์ํ ํ์ ์ ์ปจํ ์ด๋ค์ ์ ์ฉํ ์ ์๋ค. ์ฌ๊ธฐ์ ์ ๋ค๋ฆญ ์๊ณ ๋ฆฌ์ฆ์ ๊ณง๋ฐ๋ก ์ปจํ ์ด๋์ ์ ์ฉํ ์ ์๋ค๋ ์ ์ ์ฃผ์ํ๋ค. ๋๋ถ๋ถ ๋ฐ๋ณต์(์ดํฐ๋ ์ดํฐiterator)๋ผ ๋ถ๋ฅด๋ ์ค๊ฐ ๋งค์ฒด๋ฅผ ๊ฑฐ์น๋ค. โป ์ดํฐ๋ ์ดํฐ begin( ), end( ) ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ๋ง์ง๋ง ํญ๋ชฉ์ ๋ฐ๋ก ๋ค์ ์์๊น์ง ์์ฐจ์ ์ผ๋ก(์ ๋ฐฉํฅ์ผ๋ก) ํ์ํ๋ non-const ๋ฐ๋ณต์๋ฅผ ๋ฆฌํดํ๋ค. cbegin( ), cend( ) ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ๋ง์ง๋ง ํญ๋ชฉ์ ๋ฐ๋ก ๋ค์ ์์๊น์ง ์์ฐจ์ ์ผ๋ก(์ ๋ฐฉํฅ์ผ๋ก) ํ์ํ๋ const ๋ฐ๋ณต์๋ฅผ ๋ฆฌํดํ๋ค. rbegin( ), rend( ) ๋ง์ง๋ง ์์๋ถํฐ ์ฒซ ๋ฒ์งธ ํญ๋ชฉ์ ๋ฐ๋ก ๋ค์ ์์๊น์ง ์์ฐจ์ ์ผ๋ก(์ญ๋ฐฉํฅ์ผ๋ก) ํ์ํ๋ n..