본문 바로가기

컴퓨터61

Effective C++ chapter 1 Effective C++ Chaper 1 from 연우 김 2015. 3. 20.
c++ 함수포인터 부터 std::function까지 개념 및 기초함수의 시작 번지를 가르키는 포인터 (어셈블리 언어의 호출 스택을 생각해보자)포인터 형식 자체가 다르다.리턴타입(*함수 포인터 이름)(인수목록)함수 : int Func(int a) => 포인터 : int(*funcPtr)(int)함수의 시작번지에 들어가기 앞서 인수들의 목록과 리턴 형식(주소) 정보를 (스택에) 저장해야하므로함수 포인터 사용 방법대입 & 호출대입 : funcPtr = Func; (괄호없이 단독으로 사용된 함수명은 함수의 시작 번지를 나타내는 포인터 상수.)호출 : 원칙적으로 (*funcPtr)(2); 하지만 컴파일러는 funcPtr(2); 도 동작하게한다.인자가 잘못 들어가거나 리턴형식을 잘못된 타입으로 받으면 당연히 컴파일 에러, 함수 포인터 형식이 복잡한 이유하나의 고유한.. 2015. 3. 10.
cocos2d-x 3.x 에서 이벤트 드리븐(custom event) EventDriven이벤트 드리븐 이해이벤트 드리븐으로 클래스간 통신을 했을 때 장점불필요한 중간다리 클래스/커플링이 없어진다.실제 작동에 참여하는 클래스끼리 채팅하듯 주고받기 때문에 가독성이 더 좋아진다.customEvent로 EventDriven구현 가능customEvent 통신 방법 //받는 쪽: 이벤트 리스너 등록. cocos2d::EventListenerCustom* listener = cocos2d::EventListenerCustom::create("이벤트 이름", eventCallbackFunc); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); //보내는 쪽: 이벤트를 발사. 유저 데이터를 void*로 동.. 2015. 3. 10.
cocos2d-x Socket-IO 활용 SocketIO란?매우 편리한 네트워크 연결 라이브러리 (알아서 검색)예제 코드http://qiita.com/kuuki_yomenaio/items/c25477c9394c1709019bnode js 최신버전은 윈도우 8.1에서 안돌아간다.http://stackoverflow.com/questions/25103499/cant-start-npm-on-windows-8-error-enoent-stat-c-users-user-appdata-roaminghandshake 문제연결시 handshake waiting이 계속되다가 time out되는 경우http://discuss.cocos2d-x.org/t/socketio-problem/14716 socketIO의 event driven 방식은 emit과 on으로 구현.. 2015. 3. 10.