• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
[1116 박민근] c++11에 추가된 새로운 기능들
 

[1116 박민근] c++11에 추가된 새로운 기능들

on

  • 3,392 views

 

Statistics

Views

Total Views
3,392
Views on SlideShare
3,308
Embed Views
84

Actions

Likes
10
Downloads
49
Comments
0

5 Embeds 84

http://blog.naver.com 60
http://cafe.nhnnext.org 10
http://www.heej.net 10
http://cafe.naver.com 3
https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    [1116 박민근] c++11에 추가된 새로운 기능들 [1116 박민근] c++11에 추가된 새로운 기능들 Presentation Transcript

    • C++11의 새로운 기능들 박민근
    • C++11 이란? C++의 추가된 표준 기능. 11은 2011년도에 ISO 승인이 난것을 의미. Boost의 일부 라이브러리 포함 짱짱한 기능으로 무장해서 발전됨
    • C++98 C++03 <출처 : [KGC2012] Boost 라이브러리와 C++11 > 최흥배
    • 2006년까지 새로운 표준에 들어갈 기능을 제안 받 음 당초 계획은 2009년까지 표준을 확정하는 것. 그래서 C++0x라고 부르기로 함
    • 2011년 8월 12일에 ISO에서 승인을 받음 C++11
    • • C++0x TR1 라이브러리 추가 • VC++ 버전 9 <출처 : [KGC2012] Boost 라이브러리와 C++11 > 최흥배
    • • auto • static_assert • rvalue Reference • lambda • decltype • nullptr • unique_ptr • make_shared • STL 추가 <출처 : [KGC2012] Boost 라이브러리와 C++11 > 최흥배
    • http://msdn.microsoft.com/ko-kr/library/vstudio/hh567368.aspx <출처 : [KGC2012] Boost 라이브러리와 C++11 > 최흥배
    • auto 컴파일 타임때 타입이 자동으로 정해 진다!
    • auto STL의 Iterator 사용시에 유용
    • 람다 이름 없는 함수. 함수 객체가 들어가야할 자리에, 대신에 간단히 함수 자체를 직접 구현 가능 함수 포인터처럼 사용도 가능 STL의 함수 객체 대신에 아주 유용하다.
    • 람다
    • 람다
    • Range base for 배열과 STL의 반복 for문을 한큐에 간단하게~!
    • Range base for
    • nullptr NULL(0)이 아닌, 진짜 NULL Pointer 기존의 NULL(0)하고도 호환이 된다.
    • shared_ptr 새 버전의 스마트 포인터. 기존의 auto_ptr이 있었지만, 문제가 많아서 거의 쓰이지 않았음 그런 문제들을 해결한 스마트 포인터
    • shared_ptr
    • shared_ptr
    • shared_ptr
    • shared_ptr
    • shared_ptr
    • unique_ptr 순환 참조 문제를 해결하기 위해서, 참조가 단 1개만 존재하는 유니크 스마트 포인터 사용법은 shared_ptr과 동일하다
    • tuple 2개 이상의 서로 다른 데이터 타입을 하나로 묶을 수 있다 2개 이상의 리턴값이 필요하는 곳등에서 활용
    • tuple
    • tuple
    • array 일반 고정 배열 타입. Vector<>는 동적 배열 타입인데 반해, 정말 말 그대로 일반 배열
    • forward_list 단방향 리스트 (list<> 는 양방향 리스트) 양방향 List 보다 용량이 적고, 속도가 빠르다.
    • forward_list Emplace : 중간 복사본을 생성하지 않고, 원소에 직접 대입한다.
    • forward_list
    • forward_list
    • Unordered_map 정렬되지 않은 Map. Hash_map 과 같은 구조
    • Unordered_map
    • chrono 나노세컨드까지 계산이 가능한 초정밀 타임 객체
    • chrono
    • thread 멀티스레드 라이브러리
    • thread
    • thread
    • 동기화 객체
    • 동기화 객체
    • std::atomic Lock 없이 Lock-Free로 변수값을 변경할 수 있다.
    • async/future 함수를 비동기로 실행하기
    • 참고 자료 • [KGC11] Boost 라이브러리와 C++11 (최흥배) • Think About C++11 STL (최흥배/한빛미디어)