🚀 성능을 극대화하는 noexcept 활용법 noexcept는 "이 함수는 절대로 예외를 던지지 않는다"고 컴파일러에게 확신을 주는 키워드입니다. 컴파일러는 이 신호를 바탕으로 예외 처리용 보험 코드를 제거하고 최적화의 풀악셀을 밟습니다. 💡 핵심 원리: 예외 처리 로직(Stack Unwinding)이 생략되므로 실행 파일 크기가 줄어들고, 런타임 성능이 향상됩니다. 예제 1. STL 컨테이너 이동 최적화 std::vector 재할당 시, 이동 생성자가 noexcept여야만 복사 대신 이동(Move)을 수행하여 성능이 수십 배 향상됩니다. class SmartBuffer {public: // noexcept가 있어야 vector가 안심하고 데이터를..
상속 설계의 정석: "상속이 필요 없으면 final을, 한다면 override를" C++ 개발 시 가장 빈번하게 발생하는 실수는 '의도하지 않은 상속'과 '잘못된 재정의'입니다. 컴파일러가 내 실수를 대신 찾아내게 만드는 똑똑한 키워드 활용법을 예제와 함께 알아봅니다. 1. override: 컴파일러에게 감시 요청하기 단순히 부모 함수와 이름을 맞추는 것만으로는 부족합니다. override는 실수를 에러로 바꿔주는 안전장치입니다. ❌ override가 없는 위험한 코드 class Base {public: virtual void process(float speed) { ... }};class Derived : public Base {public: ..
클래스 설계의 마침표, final 왜 우리는 "더 이상 상속이 필요 없는 클래스"에 명시적으로 final을 붙여야 할까? 본질(Essence): 상속은 객체지향의 강력한 무기이지만, 의도치 않은 상속은 시스템을 복잡하게 만들고 성능을 저하시킵니다. 더 이상의 확장이 필요 없는 클래스라면 final을 붙여 설계의 의도를 명확히 하고 성능 이득을 챙겨야 합니다. 1. 설계의 명확성: "여기서 끝내겠습니다" 코드는 읽는 사람에게 의도를 전달해야 합니다. 클래스에 final이 붙어 있다면, 다른 개발자는 이 클래스의 내부 로직을 분석할 때 '어디선가 이 로직이 오버라이딩되어 다르게 동작할 수 있다'는 걱정을 할 필요가 없습니다. C++ 예시: 상속을..
1. 파일 역할 및 이름 매칭 (정리)mydomain.com 환경에 맞춰 아래와 같은 이름으로 생성하고 관리하게 됩니다. 파일명역할ca.pem인증 기관(CA) 증명서. 클라이언트 PC에 설치하여 신뢰를 구축합니다 mydomain.key서버의 비밀키. 유출되지 않도록 서버 내부에만 보관합니다 mydomain.crtmydomain.com 도메인을 증명하는 최종 인증서입니다 mydomain.jks자바 환경용 파일. mydomain.key와 mydomain.crt를 합친 금고입니다 2. OpenSSL을 이용한 재발행 명령어 (순서대로 실행)1단계: Root CA 만들기 (도장 준비)먼저 본인이 직접 인증 기관이 되기 위한 파일을 만듭니다.Bash # 1. CA용 비밀키 생성openssl genrsa ..
🚀 CMake를 이용한 C++ 크로스 플랫폼 개발 이 문서는 리눅스, 윈도우, macOS를 지원하는 C++ 프로젝트를 CMake로 구축하는 방법을 다룹니다. I. CMake 기초: Hello World! CMake의 핵심 3단계(Configure, Build, Run)를 보여주는 가장 기본적인 예제입니다. 1. 프로젝트 구조 HelloWorld/├── CMakeLists.txt└── main.cpp 2. CMakeLists.txt cmake_minimum_required(VERSION 3.10)project(HelloWorld CXX)# C++ 표준 설정set(CMAKE_CXX_STANDARD 17)set(CMAKE_CXX_STANDARD_REQUIRED T..
- Total
- Today
- Yesterday
- 블루버블다이빙팀
- 블루버블다이브팀
- 리눅스
- 디자인패턴
- 윈도우
- 암호화
- ip
- 블루버블
- C#
- RSA
- Linux
- Windows
- 패턴
- 서귀포
- 성산블루버블
- 제주도
- C
- DLL
- 스쿠버다이빙
- PowerShell
- 울릉도
- OpenSource
- 다이빙
- 서귀포블루버블
- Build
- Thread
- 현포다이브
- 양파다이브
- C++
- ReFS
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |