IT-개발/STL 및 Boost(7)
-
STL - sort (2) (펌)
Sort 함수 이런걸 define으로 그냥 쓸까 고민하다가 #define MAX(a,b) \ ({ __typeof__ (a) _a = (a); \ __typeof__ (b) _b = (b); \ _a > _b ? _a : _b; }) #define MIN(a,b) \ ({ __typeof__ (a) _a = (a); \ __typeof__ (b) _b = (b); \ _a
2019.01.14 -
STL - string - 참고(2)
(펌) - http://blog.naver.com/PostView.nhn?blogId=vosej_v&logNo=50176084445&redirect=Dlog&widgetTypeCall=true string classHeader : .assign : 문자열을 할당( 문자열 ) : 문자열을 할당한다.( 개수, 문자 ) : 문자를 개수만큼 할당한다( 문자열, 시작위치, 개수 ) : 매개변수 문자열의 시작위치부터 개수만큼을 호출한 문자열에 할당 string s1, s2, s3 ; s1.assign( "ABCDEFG" ) ; // s1 = "ABCDEFG" s2.assign( 3, 'a' ) ; // s2 = "aaa" s3.assign( s, 2, 4 ) ; // s3 = "CDEF" ( 문자열 s의 2부터 4..
2017.02.07 -
STL - string - 참고(1)
(펌) : http://makerj.tistory.com/127#string간의-문자열-비교string 생성방법1string myString = "abcd"; 단, 이 방식으로는 'a'와 같은 char로 생성이 불가능하다. 따라서 이 한계를 극복하려면 방법 2를 써야한다.방법2string myString; myString = "abcd";string 확장, 문자열 추가방법1: += 연산자 이용string base = "hello world!"; base += "x";방법2: append() 멤버 함수 이용string base = "hello world!"; base.append("appended!");string 길이string base = "hello world!"; base.length(); base..
2017.02.07 -
Visual C++ 2010 - error C2825: '_Fty': '::'가 뒤에 나오면 클래스 또는 네임스페이스여야 합니다.
(펌. 원작 : http://rosagigantea.tistory.com/387) error C2825: '_Fty': '::'가 뒤에 나오면 클래스 또는 네임스페이스여야 합니다. 이런식으로 뭔가 알지도 못하는 xxresult(28) 파일을 찾아봐염 에러가 떨어졌습니다. 아무리 이 파일 안을 봐도 뭔가 복잡한 코드라는것 밖에 알 수 없어서 이넘이 컴파일 하다 죽은 소스 부분을 살펴보다가 이런 부분이 나오더군요. error C2678: 이항 '==' : 왼쪽 피연산자로 'std::tr1::_Bind_fty' 형식을 사용하는 연산자가 없거나 허용되는 변환이 없습니다. 1> with 1> [ 1> _Fty=SOCKET, 1> _Ret=std::tr1::_Notforced, 1> _BindN=std::tr1::..
2015.10.21 -
STL std::function 기반 콜백함수 구현
STL std::function 기반 콜백함수 구현.(출처 : http://igotit.tistory.com/213) 개요 통상 콜백함수 구현시 함수포인터 기반으로 구현하는 방식 (보기 -> http://igotit.tistory.com/212 ) 으로는 클래스 멤버함수를 콜백으로 등록하지 못하는 단점이 있다. STL (Standard Template Library) 에서 제공하는 std::function, std::bind 등을 사용하면 클래스 멤버함수도 콜백함수로 등록가능하므로 대단히 편리하다. STL 기반 콜백구현방법 아래 설명방식에서 "다른 곳", "이곳" 이란 표현은 함수포인터 기반 콜백구현방법 설명글 (http://igotit.tistory.com/212 )에서의 것과 동일한 것임. "이곳"에..
2015.10.20 -
연산자 오버로딩 - 전위, 후위 차이
C++ 에서 자주 사용거론 되는 거니까~ 넘 자세히 남기기 보다는 간단하게 남깁니다. Class Point{ int x; int y; public: Point(int _x=0, int _y=0) : x(_x), y(_y) { } // 음~~ 이런 방법의 생성자 좋네~ ... const Point& operator--() // 전위-- { --x; --y; return *this; } const Point operator--(int) // 후위 -- { Point pt(x,y); --x; // 내부 구현이므로 멈버변수는 전위 -- 연산을 사용해도 무방. --y; // 내부 구현이므로 멈버변수는 전위 -- 연산을 사용해도 무방. } } // 알아두면 유용하게 사용할 날이 오겠징~
2015.10.19