분류 전체보기 336

[C++] 접근 제어자 private 자바와의 차이점

C++ : 같은 클래스의 객체는 서로의 private 멤버에 접근할 수 있다   이는 C++에서 private 접근 제어자가 클래스 단위로 동작하기 때문이다 #include using namespace std;class MyClass {private: int value;public: MyClass(int val) : value(val) {} bool isEqual(const MyClass& other) const { return value == other.value; // 같은 클래스의 객체라서 접근 가능 }};int main() { MyClass obj1(10), obj2(10); cout  Java : 클래스 외부뿐 아니라 다른 객체(심지어 같은 클..

IT공부 2024.12.29

[뇌를 자극하는 윈도우즈 시스템 프로그래밍] 5장. 프로세스의 생성과 소멸

* 해당 글은 윤성우의 뇌를 자극하는 윈도우즈 시스템 프로그래밍 도서를 읽고 정리한 글입니다   https://product.kyobobook.co.kr/detail/S000001223395 뇌를 자극하는 윈도우즈 시스템 프로그래밍 | 윤성우 - 교보문고뇌를 자극하는 윈도우즈 시스템 프로그래밍 |product.kyobobook.co.kr     * 우리가 사용하는 Windows는   멀티 프로세스(Multi-Process) 운영체제, 프로세스라는 것이 여러개 존재할 수 있는 운영체제이다 * 프로세스   실행 중인 프로그램 * 실행파일(.exe, Executable File)   단순히 데이터만 담고 있는 파일과 달리,   컴퓨터가 읽고 실행할 수 있는 명령어가 담긴 파일로, 컴퓨터에게 특정 작업을 지시하..

IT공부/IT서적 2024.12.24

[뇌를 자극하는 윈도우즈 시스템 프로그래밍] 4장. 컴퓨터 구조 - 2

* 해당 글은 윤성우의 뇌를 자극하는 윈도우즈 시스템 프로그래밍 도서를 읽고 정리한 글입니다   https://product.kyobobook.co.kr/detail/S000001223395 뇌를 자극하는 윈도우즈 시스템 프로그래밍 | 윤성우 - 교보문고뇌를 자극하는 윈도우즈 시스템 프로그래밍 |product.kyobobook.co.kr    * 명령어   CPU에게 일을 시키기 위한 명령어   ㄴ CISC(Complex Instruction Set Computer)        복잡하고 많은 종류의 명령어와 주소 지정 모드 사용         가변 길이 명렁어 형식   ㄴ RISC(Reduced Instruction Set Computer)        간단하고 적은 종류의 명령어와 주소 지정 모드를 ..

IT공부/IT서적 2024.12.24

[게임 프로그래머 입문 올인원] 블루프린트 실습 - 1주차

* 해당 글은 게임 프로그래머 입문 올인원 강의를 보고 정리한 글입니다.   강의_바로가기 [게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버Rookiss | 어디부터 시작할지 막막한 게임 프로그래밍 입문자를 위한 All-In-One 커리큘럼입니다. C++, 자료구조/알고리즘, STL, 게임 수학, Windows API, 게임 서버 입문으로 이어지는 알찬 커리큘럼으로www.inflearn.com    * 언리얼 다운로드   https://www.unrealengine.com/ko/download * 게임 > 기본 > 프로젝트_이름 > 생성 * 블루프린트 실습    * 참고한 블로그   https://krjm2404.tistory.c..

[뇌를 자극하는 윈도우즈 시스템 프로그래밍] 3장. 64비트 기반 프로그래밍

* 해당 글은 윤성우의 뇌를 자극하는 윈도우즈 시스템 프로그래밍 도서를 읽고 정리한 글입니다    https://product.kyobobook.co.kr/detail/S000001223395  뇌를 자극하는 윈도우즈 시스템 프로그래밍 | 윤성우 - 교보문고뇌를 자극하는 윈도우즈 시스템 프로그래밍 |product.kyobobook.co.kr * 한 번에 송수신할 수 있는 데이터 크기와 한 번에 처리할 수 있는 데이터 크기를 기준으로   32비트 컴퓨터와 64비트 컴퓨터를 구분 짓는다 * 프로그래머 입장에서는 표현할 수 있는 주소값의 범위가 넓으면 좋다   왜? 메모리 공간만 충분하다면, 주소값의 범위가 넓은 만큼 더 넓은 메모리 공간을 활용할 수 있기 때문 * 데이터 표현 모델운영체제모델charshort..

IT공부/IT서적 2024.12.21

[뇌를 자극하는 윈도우즈 시스템 프로그래밍] 2장. 아스키코드 vs 유니코드

* 문자셋(Character Sets)   약속된 문자의 표현 방법   대표적으로 아스키코드(ASCII CODE)와 유니코드(UNICODE)가 있다 * 문자열의 형태1. SBCS(Single Byte Character Set)   문자를 표현하는데 있어서 1바이트만 사용, 아스키 코드가 이에 해당2. MBCS(Multi Byte Character Set)   다양한 바이트 수를 이용하여 문자를 표현하는 방식, 어떤 문자는 1바이트로 어떤 문자는 2바이트로 표현3. WBCS(Wide Byte Character Set)  모든 문자를 2바이트로 처리, 유니코드 #include #include int main(void){ char str[] = "ABC한글"; int size = sizeof(str); int..

IT공부/IT서적 2024.12.21

[뇌를 자극하는 윈도우즈 시스템 프로그래밍] 1장. 컴퓨터 구조 - 1

* 시스템 프로그래밍(System Programming)   컴퓨터 시스템을 동작시키는 프로그램 * 컴퓨터 시스템의 주요 구성요소(Main Components)   컴퓨터 구조 - CPU, 캐쉬   운영체제 - 메인 메모리, 하드디스크 * 컴퓨터 하드웨어의 구성1. CPU   연산을 담당   ① ALU(Arithmetic Logic Unit)   ② 컨트롤 유닛(Control Unit) - 명령어 해석   ③ 레지스터들(Registers Set)   ④ 버스 인터페이스(Bus Interface)   ⑤ 클럭 신호(Clock Pluse) - 클럭 신호에 맞춰 CPU 일함2. 메인 메모리(Main Memory)   컴파일이 완료된 프로그램 코드가 올라가서 실행되는 영역3. 입출력 버스(Input/Output..

IT공부/IT서적 2024.12.20

[C++] Placement New

* Placement New   표준 C++에서 제공하는 기능으로,   새롭게 메모리에 할당하지 않고, 사용자가 제공한 특정 메모리 위치에 객체를 생성한다 #include class CTest{public: CTest() { printf("CTest Constructor\n"); } ~CTest() { printf("CTest Destructor\n"); } int _x = 1; int _y = 1;};int main(void){ // 일반 동적 할당 //CTest* p1 = new CTest(); //delete p1; // placement new 예제 char buffer[sizeof(CTest)]; // 충분한 크기의 버퍼를 생성 CTest* p2 = new (buffer) CTest()..

IT공부 2024.12.18