전체보기

[C - 콘솔 게임] RPG 게임 [나름...무기도 선택 가능하고 그에 따른 스탯도 주어진다..] [메인 화면...이동키는 역시 넘버패드..(왜 이렇게 해놨을까...)] [인벤토리도 구현~~] [전투씬...나름 열심히 아스키 코드로 변환해서 이미지도 넣고...체력게이지도 넣고...] 8월달 쯤 만든것 같다..나름 이벤트와 엔딩과 오프닝도 넣고 열심히 만들었던것 같다..하지만 코드는 안습...지금이라면 클래스나 STL 자료구조를 열심히 사용해 보겠지만..이때는 그런거 몰랐다..ㅠㅠ
[C - 콘솔 게임] 카드 게임 [하이 로우] 8월달에 만든 하이로우 카드 게임방향키를 넘버패드 4,6으로 해놓은 이유는 무엇일까..아무튼 잔버그가 많다..모두 고치기 보다는 이것도 역시 아련한 추억으로...
[C - 콘솔 게임] 카드 게임 7월달쯤에 만든 게임이다.일명 월남뽕이라고도 하던데...미완성에 버그도 많다..(문자열 입력을 막지 않음..)다시 고치기 보다는 아련한 추억으로 남기자
첫 작업 설정부터가 난관이었던 directx 11 을 이용한 3d 게임 프로그래밍 입문!누구나 하루 반나절 정도는 박스를 띄우다가 키보드를 한개 이상 부시며 그날 새벽에 잠이 들면 꿈에서도 네모 박스가 보인다는.. 그 만큼 난이도가 있다는 전설의 책!( 구글만 검색해도 나온다).. 진짜 부들부들하게 설정부터가 짜증났던 책이다! 책 자체에 해결책이 나와있는 부분이 아니고.. 버전이 다르다 보니...또 낯선 용어와 설정들...아무튼 우여곡절이 너무 많았다!인터넷에 나와있는 해결책중에 절반이상이 이상한 부분이었다..(따라했다가 프로잭트만 10번은 다시 만듬..) [ 네모다..ㅠㅠ...] 앞으로 더 많은 예제들을 수정해 가면서 해야할텐데...걱정이 크다 ㅠ
먼저, 일반적인 코드를 보겠습니다. AA라는 클래스를 동적할당하고 사용후에 해제를 해줍니다. 프로그래머가 동적으로 생성한 객체를 별도로 해제해주어야 하는데 C++ 에서는 new와 delete를 사용해서 일일이 입력해주어야 합니다. 물론 꼼꼼한 프로그래머라면 당연히 해제도 신경써야하지만, 만약에 신경을 쓰지 못하거나 애매한 상황이 와버리면 어떨까요? 아주 극단적인 코드를 작성해 보겠습니다. 비멤버함수인 Func에서 0~9까지의 난수를 생성해서 동적할당으로 생성된 test라는 클래스를 생성하고 그 값을 리턴하고 있습니다. 그럼 여기서 Func가 호출될때마다 생성되는 AA라는 객체를 어디서 해제해 줘야 할까요? return 이전에 넣자니 값을 돌려주기전에 객체가 메모리에서 제거된 후에 쓰레기값을 리턴하게 되고..
* 생성자 - 객체가 생성될때 호출되는 함수입니다.* 소멸자 - 객체가 소멸될때 호출되는 함수입니다. 동적할당의 경우 delete에서 소멸자가 호출되고, 일반적인 객체 생성에서는 자동으로 소멸자가 호출됩니다. 자 아래와 같은 객체가 있다고 했을때 생성자와 소멸자가 없는데도 불구하고 객체는 생성, 대입 , 복사가 됩니다. 그 이유는 컴파일러가 디폴트 생성자와 디폴트 소멸자를 자동으로 생성하기 때문입니다.즉 프로그래머가 만들지 않은 생성자와 호출자와 연산자를 컴파일러가 만들어주게 되는것 입니다. [ 3번째 코드는 위 코드와 결국 같다.] 어떻게 생각해보면 참 편리한것 같습니다만...대표적으로 디폴트 복사 생성자에는 문제가 발생됩니다. 그 이유는 아래에서 확인할 수 있는데요. [ 생성자는 순차적이나 소멸자는 ..
프로그래밍을 하다보면 디버깅이나 특정 변수의 값을 확인하고 싶을때가 있습니다.이때 중단점을 걸고 확인한다든지.. 윈도우 창에 따로 표시를 해주는데 여간 번거로운일이 아닙니다.이때 도스 콘솔시절에 cout이나 prinrf가 그리워지는데요.. 윈도우 API에서도 콘솔창을 띄워 줄 수 있습니다. #ifdef _DEBUG#pragma comment(linker,"/entry:WinMainCRTStartup /subsystem:console")#endif 조건부로 디버그 모드에서만 콘솔 창을 따로 열어줄 수 있습니다.(릴리즈에서도 보이면 안되니까요..;;) 짠! 창이 열렸습니다...(오른쪽은 연습으로 제작중인 게임입니다...)printf도 되고 cout도 되고..편하게 확인 할 수 있습니다.
그 동안 STL을 공부한다고 하지만 기본이 탄탄하지 못해 그냥 져냥 사용법만 간단히 사용하는 수준이었습니다.이제부터 하루에 조금씩이라도 기초부터 다시 공부를 해 나가야겠습니다. 먼저 STL에 필요한 주요 연산자 오버로딩부터 공부하겠습니다. 연산자 오버로딩이란 함수의 오버로딩과 같이 연산자도 하나의 함수라는 개념을 사용하여, 중복 정의할 수 있도록 하는 것입니다. 즉, 기본적으로 C에서 제공하는 +,-,*,=,++ 등의 연산자의 의미를 다시 부여하는 것을 말합니다. 먼저 오버로딩에 사용되는 operator 키워드 부터 알아보겠습니다. 순서대로 반환형과 Operator 키워드 , 연산자, 매개 변수 순으로 작성합니다.예시에서는 하나의 정수 제곱을 연산자 오버로딩 하였습니다. [결과] 도중에 임시 객체를 사용..
QA Engineer  - P군
'분류 전체보기' 카테고리의 글 목록 (12 Page)