[ Programming ]2009. 5. 1. 23:02
이번에 opengl 수업을 듣는데... 시험 문제로 별, 달, 산, 바다 와 같은 그림을 만드는거여서 미리 만들었습니다.
별과 잔상?은 랜덤하게 했고.. 산같은 경우는 sin 함수를 사용하여서 만들었습니다.

실행된 화면.
Posted by 냉동
[ Programming ]2009. 4. 30. 01:07
표준 데이터형의 어떤 값을 다른 표준 데이터형의 한 변수에 대입하는 명령문을 작성하면, C++는 그 값의 데이터형을, 대입받는 입장에 있는 변수와 동일한 데이터형으로 자동으로 변환하여, 두 데이터 형이 서로 호환이 되게 만든다. 단, C++는 호환되지 않는 데이터형은 자동으로 변환하지 않는다. 예를 들면,  int *p = 10; // 데이터형이 불일치라서 컴파일 에러를 나타낸다. 강제 데이터형 변환을 하면 컴파일 에러를 넘길수 있다. int *p = (int*)10; 이렇게 자동변환을 할것인지 강제 변환을 할것인지를 사용자가 정할 수 있다.
// test.cpp : 콘솔 응용 프로그램에 대한 진입점을 정의합니다.
//

#include "stdafx.h"

class CTest
{
public:
	CTest() : m_i(0)
	{

	}
	/// C++에서, 하나의 전달이자를 취하는 생성자는 
	/// 그 전달인자 데이터형의 값을 클래스형으로 변환하는 설계도처럼 동작.
	/// 다음의 생성자는 int형 값을 CTest형 값으로 변환하는 명령문 역활.
	/// 주의 : 하나의 전달인자만 사용할 수 있는 생성자만이 이와 같은 변환 함수로 동작.
	/// explicit는 아래 설명.
	/*explicit*/ CTest(int i) : m_i(i)	/// int을 CTest 객체로 변환하는 템플릿.
	{

	}
	~CTest()
	{

	}
	void Print() const
	{
		std::cout << "m_i의 값 : " << m_i << std::endl;
	}
private:
	int m_i;
};

int _tmain(int argc, _TCHAR* argv[])
{
	/// CTest(int i)을 사용하여 10을 CTest로 변환.
	/// CTest(int i) 생성자를 사용하여, CTest 임시 객체를 생성한다.
	/// 이때 10으로 초기화 한다. 그리고 나서 멤버별 대입으로 임시 객체의 내용을
	/// Test에 복사한다. 이런 자동으로 이루어지는 형변환을 암시적 데이터형 변환이라 한다.
	/// explicit 주석시 암시적 형 변환.
	/// explicit 주석 없을시 컴파일 에러.
	/// error C2440: '초기화 중' : 'int'에서 'CTest'(으)로 변환할 수 없습니다.
	CTest Test = 10;

	Test.Print();

	/// explicit 주석 없을시 명시적 형 변환.
	Test = CTest(11);
	Test.Print();
	Test = (CTest)12;
	Test.Print();
	
	return 0;
}
/// 이런 자동적인 데이터 형 변환으로 인해 편할수도 있지만, 오히려 독이 될수도 있다.
/// 그래서 최신 C++ 시스템에는 자동 데이터형 변환을 못하게 하는 explicit라는 새로운 키워드가
/// 추가 되었다.
Posted by 냉동
[ Game ]2009. 4. 23. 03:15
nds로 나와서 한번 화제가 된적이 있죠?
일본의 국민 게임 드래곤퀘스트입니다. 우리나라의 스타정도라고 생각하면 되겠죠?
드래곤퀘스트를 접한건 8이 처음이였는데... 군대가기전 정말 불타 올랐던 적이 있습니다.
그때를 생각하니 빨리 나왔으면 좋겠네요..

'[ Game ]' 카테고리의 다른 글

팀이코 신작 TRICO 트레일러  (0) 2009.05.20
미소녀? 플래시 저격 게임  (0) 2009.05.13
E3 2009 출전작 첫번째 리스트  (0) 2009.05.04
크라이엔진3 새로운 데모  (0) 2009.05.01
마그나카르타2  (0) 2009.04.20
Posted by 냉동