목록프로그래밍(c++) (62)
정체불명의 모모
강의 중 배운 내용과 추가적으로 배워야 할 부분들을 정리한 메모장 입니다.강의 : (인프런) 게임 프로그래머 입문 올인원 ◇ 포인터를 이용해서 'C'언어의 함수인 strCpy( ) 함수를 구현해 보는 예제 (파악하는데 시간이 좀 걸려 따로 글을 정리해서 올립니다.) - strCpy 함수는 문자열 복사 하는 함수 입니다.// 아래 코드는 좀 생각 할 필요가 있습니다.char* StrCpy(char* dest, char* src){ // 원본 위치 char* ret = dest; { // index 이용하는 버전 //{ // char* ret = dest; // int i = 0; // while (src[i] != 0) // { // dest[i] = src[i]; // i++; // } // de..
강의 중 배운 내용과 추가적으로 배워야 할 부분들을 정리한 메모장 입니다.강의 : (인프런) 게임 프로그래머 입문 올인원 Stack Frame 구조: 메모리의 스택(stack) 영역은 함수의 호출과 관계되는 지역 변수와 매개변수가 저장되는 영역 입니다. 스택 영역은 함수의 호출과 함께 할당되며, 함수의 호출이 완료되면 소멸합니다. 스택의 메모리를 사용하고 리턴 되었을때 스택 정보는 해제가 되는 건 아니다.(초기화 시켜 주진 않는다.) 함수가 호출되면 스택에는 함수의 매개변수, 호출이 끝난 뒤 돌아갈 반환 주소값, 함수에서 선언된 지역 변수등이 저장 됩니다.매개변수반환주소지역 변수 ▷ 스택 프레임의 동작 방식int main(void){ func1(); // func1()호출 retu..
오오... 이제 거의 끝이 보입니다! 앞으로 한 챕터만 끝내면 STL 책은 이걸로 끝~~ 물론, 이 내용으로 마스터 될게 아니니깐 더 공부해야 겠죠 ㅎㅎ 그래도 책한권을 또 끝낸다니 뿌듯하네요~ 이번 장도 어렵지만 열심히 알아 봅시다. 이번장의 주요 내용은 함수자 입니다. 그럼, Let's go~! ㅁ 함수자란? : 함수 객체(function object)라고도 부르며, 0개 이상의 인자를 받아서 알고리즘의 기본 동작을 변형하거나 확장 시켜주는 객체를 얘기합니다. 함수자 클래스는 값으로 전달되도록(pass-by-value) 설계하자 : STL에서 함수 객체는 함수 사이를 오갈 때 값으로 전달(즉, 복사) 됩니다. ▷ for_each 알고리즘을 보면 함수 객체를 값으로 받아들이고 값으로 반환 한다. tem..
캐스팅의 4개 종류 ㅁ 캐스팅이란? : 형(타입) 변환을 말한다. ㅁ c++에서 제공하는 캐스트 연산자 4가지 const_cast( ) : 객체의 상수성(constness)을 없애는 용도로 사용됩니다. dynamic_cast( ) : '안전한 다운캐스팅(safe downcasting)'을 할 때 사용하는 연산자 입니다. 즉, 주어진 객체가 어떤 클래스 상속 계통에 속한 특정 타입인지 아닌지를 결정하는 작업에 쓰입니다. 런타임 비용이 높은 캐스트 연산자 입니다. 내가 자세히 정리한 글 : https://uncertainty-momo.tistory.com/66?category=777980 reinterpret_cast( ) : 포인터를 int로 바꾸는 등의 하부 수준 캐스팅을 위해 만들어진 연산자 입니다. ..