본문 바로가기

c++2025

[C++20 - Concurrency] Chapter 02. jthread GitHub :https://github.com/developeSHG/CPP20-Concurrency/commit/1fa6cf85079def1f9bab259ed5d87a2a34ce0fce jthread · developeSHG/CPP20-Concurrency@1fa6cf8 developeSHG committed Jul 31, 2023 github.com #include using namespace std; #include #include #include #include #include #include #include #include #include #include // 오늘의 주제 : jthread mutex mut; void ThreadMain() { mut.lock(); while (true) { /.. 2023. 7. 29.
[C++20 - Concurrency] Chapter 01. semaphore GitHub :https://github.com/developeSHG/CPP20-Concurrency/commit/bee2dd6954b6e98d7d49eea69ef7a396e80b3c50 semaphore · developeSHG/CPP20-Concurrency@bee2dd6 developeSHG committed Jul 31, 2023 github.com #include using namespace std; #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #incl.. 2023. 7. 29.
[C++20 - STL] Chapter 10. 기타 함수 (source_location, bind_front, is_constant_evaluated) GitHub :https://github.com/developeSHG/CPP20-STL/commit/510c81469eab6b2c27ef46c766e52530522ea00e #include using namespace std; #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // 오늘의 주제 : 기타 함수 void PrintLog(const char* filename, int line) { cout 2023. 7. 29.
[C++20 - STL] Chapter 09. Format GitHub :https://github.com/developeSHG/CPP20-STL/commit/cb123d6135d3a84da367eef150526f32e1c29e18 Format · developeSHG/CPP20-STL@cb123d6 developeSHG committed Jul 31, 2023 github.com #include using namespace std; #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // 오늘의 주제 : Format int main() { // C에서의 Format Stri.. 2023. 7. 29.
[C++20 - STL] Chapter 08. TimeZone GitHub : https://github.com/developeSHG/CPP20-STL/commit/0d2f77f5a451c7d627adeff8b5a3e66bd45d0fef TimeZone · developeSHG/CPP20-STL@0d2f77f developeSHG committed Jul 29, 2023 github.com 온라인 게임 (한국/북미/유럽) 프랑스/독일/러시아/영국/... - 각 나라마다 시차가 존재한다. ex) 와우 - 오전 6시에 던전/일일퀘 리셋 등 나라별로 기준이 다름. 그래서 DB 시간 저장할 때? 로컬 시간? UTC 시간? UTC (Coordinated Universal Time 협정 세계시) Local Time (실행 환경) UTC와 Local Time은 서로 반대의 개념.. 2023. 7. 29.
[C++20 - STL] Chapter 07. Calendar GitHub : https://github.com/developeSHG/CPP20-STL/commit/4ebf046aaaaa6ab79bd3c9ae22865e620b797569 Calendar · developeSHG/CPP20-STL@4ebf046 developeSHG committed Jul 29, 2023 github.com 시간이 왜 그렇게 중요할까? // 예를 들어보자면, 서버쪽에서 매일 7시마다 던전이 초기화된다고 가정해보자. // 매일 7시니 시간을 판별할 수 있는 수단이 필요할 것이다. // 근데 아침 7시 자체가 국가마다 시간이 다 다르다. // 한국 서버를 할 떄랑 유럽 서버를 할 떄랑 현지 몇 시에 있는 시간을 따라갈 것 인지 // 아니면 글로벌하게 영국시간 기준으로 할 것인지 등 여러.. 2023. 7. 29.
[C++20 - STL] Chapter 06. 비트 연산 GitHub : https://github.com/developeSHG/CPP20-STL/commit/912ccfda4bff865920630e1a05e9e2c101bde57c 비트 연산 · developeSHG/CPP20-STL@912ccfd developeSHG committed Jul 28, 2023 github.com 비트 연산이 자주 사용하느냐? // - 암호학 // - 게임서버 ID (uint64) - 숫자가 거대하니 다 쓰지 않다보니 // - 기타 알고리즘 문제 // 피자집 : 피자 주문하는데, 0~19번 스무가지의 토핑이 존재 bool toppings[20]; // 위처럼 배열로 그냥 20개를 만들어 줄 수 있지만, // 피자가 아니라 mmorpg의 플레이어가 만든 커스터마이징 데이터였다고 .. 2023. 7. 29.
[C++20 - STL] Chapter 05. Arithmetic (산술) GitHub : https://github.com/developeSHG/CPP20-STL/commit/342f4dcb3b6b0785b93a2bd700a140547d039af9 Arithmetic (산술) · developeSHG/CPP20-STL@342f4dc developeSHG committed Jul 28, 2023 github.com 게임에서 정수를 생각하면, 사실 음수로 떨어지는 정수가 많이 없을 수 있다. (hp, 경험치, 골드 등등) 양의 숫자만 가지는게 일반적. 그럼에도 불구하고, unsigned를 사용하지 않고, int 사용을 많이 한다. 그럼 unsigned랑 int를 섞었을 때, 일어날 수 있는 문제를 살펴보자. #include using namespace std; #include #.. 2023. 7. 28.
[C++20 - STL] Chapter 04. Container #3 (contains + prefix/suffix checking) GitHub : https://github.com/developeSHG/CPP20-STL/commit/a376fd5e3f93e42f5dff6c6c0cc931f5e5d79ac4 Container #3 (contains + prefix/suffix checking) · developeSHG/CPP20-STL@a376fd5 developeSHG committed Jul 28, 2023 github.com #include using namespace std; #include #include #include #include #include #include #include #include #include // 오늘의 주제 : Container #3 (contains + prefix/suffix checking) /.. 2023. 7. 28.
[C++20 - STL] Chapter 03. Container #2 (erase, erase_if) GitHub :https://github.com/developeSHG/CPP20-STL/commit/9a811599df744777d4644ed08ed25af813a44c55 Container #2 (erase, erase_if) · developeSHG/CPP20-STL@9a81159 developeSHG committed Jul 28, 2023 github.com 중요한 개념. C++을 사용했으면 누구나 한번쯤은 STL 컨테이너의 삭제에 대해 불편한 점을 느껴봤을 것이다. #include using namespace std; #include #include #include #include #include #include #include #include // 오늘의 주제 : Container #2 (er.. 2023. 7. 28.