#include #include int main( void ) { std::locale::global( std::locale( "" ) ); wchar_t stringdata[4] = { 0, }; stringdata[0] = 0xac00; // 유니코드 "가" 와 같습니다 stringdata[1] = 0x3050; // 유니코드 "ぐ" 와 같습니다. stringdata[2] = 0x10a0; // 유니코드 "Ⴂ" 와 같습니다. std::wcout
분류 전체보기 검색 결과
개요 5.4 템플릿 템플릿 파라미터 5.5 0 초기화 5.6 함수 템플릿에서 문자열 리터럴을 인자로 사용 5.4 템플릿 템플릿 파라미터 ( template template paramater ) 내가 보는 책은 "C++ Template" 이다. 이 책에 이번 주제인 template tempalte paramater 를 설명하고 있는데, 난 차례대로 "이것이 바로 템플릿 템플릿 파라미터이다" 라고 말해주는 코드를 컴퓨터에 입력 했다. #include template class Stack { private: CONT m_; }; int main( void ) { Stack stack; return 0; } 그리고 이것을 컴파일 해보면, 알겠지만, 클래스 템플릿의 두번째 템플릿 파라미터가 템플릿인 것이 보인다...
개요 저번장까지 이건 이렇고 저건 저렇다 라고 설명한 한 항목이였다. 이번 장은, 실질적으로 코드를 작성하는데 도움이 될 만한 몇가지 문법 들을 설명한다. 5.1 typename 5.2 this 5.3 멤버 템플릿 5.4 템플릿 템플릿 파라미터 5.5 0 초기화 5.6 함수 템플릿에서 문자열 리터럴을 인자로 사용 본문 5.1 typename이란 무엇이고, 어떤 용도인가? 지금까지 typename 은 템플릿 파라미터를 선언할 때 사용하는 키워드로 알고 있었지만, 여기에 한가지 의미가 더 있었다. 바로 "이것은 타입이다" 라고 알려 주는 의미이다. "이것은 타입이다"라는 의미가 왜 필요한가? 만약, 템플릿 파라미터가 클래스일 떄, 그 내부 타입이, "타입" 이라고 일러주지 않는 다면, 컴파일러가 에러를 벹어..
이번 포스팅은 지극히 개인적인 환경 설정이다. 나 같은 경우에, 코딩의 좌우폭을 넓게 쓰는 스타일이라 가끔 한 화면의 좌우폭을 초과하여, 좌우 스크롤을 이용한 "가상공간"을 사용할 수 밖에 없었다. 한줄에 80자 이내로 맞추는것이 정석이지만, 아무리 해도 한줄에 80이내를 못하겠다. 그래서 고심을 하다가, "솔루션 탐색기 : Solution Explorer"를 숨김으로써 화면 좌우 폭을 넓혔다. 문제는 이 상태에서 "솔루션 탐색기"를 사용 하려고 할 때, 마우스를 이용하여, 활성화 시키면, 귀찮다는 것이다. 그래서 "솔루션 탐색기 : Solution Explorer"의 단축키( Ctrl + Alt + L ) 키를 눌러 사용 함으로써, 귀찮음을 없애 버렸다. 더군다나, "솔루션 탐색기 : Solution ..
boost 라이브러리에 항상 고마운 마음을 갖고 있다. 왜냐하면, 무엇인가 만들 때, 그 무엇을 구성하기 위하여 "부품"이 필요하다. 이러한 "부품"들 중 대다수는 boost 라이브러리에 있어, "부품"을 만드는 수고를 덜어 준다. 또한 "부품"의 퀄러티가 세계 최고이니, 고맙고 감사하고, 존경스럽기 까지 하다. 처음 boost::smart_ptr 를 사용하다, boost::bind, boost::fuctional, boost::any, boost::tokenizer, boost::lexical_cast, boost::tuple, boost::asio, boost::timer, boost::array, boost::lambda, boost::utility, boost::random, 까지 써 보았을 때,..
개요 지금까지 함수, 클래스 템플릿의 파라미터는 데이터형만 있는 것처럼 정리하였으나, 일반값도 있다. 이번 장은 데이터 형이 아닌 템플릿 파라미터란 무엇이고, 어떻게 사용하며, 주의해야 할 사항에 대해서 정리 되어 있다. 본문 데이터형이 아닌 템플릿 파라미터는 무엇인가? 상수로 평가되는 모든 값들이다. 하지만 예외적으로, 부동소수점(float, double) 상수와 문자열 상수(char *, wchar_t *)는 템플릿 파라미터로 사용 할 수 없다. 그래서 코드짜면 다음과 같이 코딩 할 수 있다. // 데이터형이 아닌 템플릿 파라미터 template class Stack { private: T elems[MAXSIZE]; }; 여기서 보듯이 첫번째 템플릿 파라미터는 데이터형이지만, 두번째 파라미터는 인트..
최근댓글