{ STL에서 전체의 요소에 특정 작업을 하고 싶을 때, 루프로 for문을 많이 사용한다. 이것을 알기에 좀더 편하게 사용 할 수 있는 알고리즘인 for_each가 있다. for_each는 루프를 대신해서 사용 할수 있으며, 보다 독립적인 구조를 유지 할 수 있게 해 준다. 그래서인지 for_each 를 사용했던 사람은 for 문보다 for_each를 더 많이 사용 한다. for_each를 사용 할 때는 함수 객체를 붙여 줄 수 있는데, 간단한 것이라면 boost 의 Lambda 를 사용하면 더 편해진다. 무슨 말이 필요 할까, 그냥 내가 만들어본 예제코드를 보자. #include #include #include #include // ikpil.com int main( void ) { //using na..
C++ 코딩의 정석 검색 결과
해당 글 58건
항목 84 : 직접 작성한 루프보다는 알고리즘을 활용하라. ( Prefer algorithm calls to handwritten loops. )
책 정리/C++ Coding Standards : C++ 코딩의 정석
2009. 4. 16. 23:04
항목 83 : 검증된 STL 임플리먼테이션을 사용 하라. ( Use a checked STL implementation. )
{ 검증된 STL은 여러개가 있다.(sgi 밖에 모르지만 나는...) 기본적으로 VC2003 이상이면 내장된 STL은 좋은 편이고, g++ 은 모르겠으나, 더 좋으면 좋았지 나쁘진 않을 것이다. boost 의 STL 쪽도 굉장히 괜찮으니, 그것을 써도 될 것이다. STL 을 사용함에 있어 몇가지 주의해야 할 것이 있는데, 반복자 : iterator 의 사용에서 많이 발생하므로, 표준문서나 C+ Standard Library 책을 보면 자세히 알아 두는게 좋을 것이라고 생각 된다. 참고로 반복자가 이상해 질것 같은 STL 함수들은 전부 반복자를 벹어내니 그것을 사용하면 문제는 없다. 부수적으로 STL이 나쁘거나 좋다고 하지만, 용도에 맞게 쓰면 독도 명약이고 명약이라도 나쁘게 쓰면 독이라는 말이 있듯이, ..
책 정리/C++ Coding Standards : C++ 코딩의 정석
2009. 4. 16. 22:59
최근댓글