<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=175.223.33.142</id>
	<title>ZeroWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=175.223.33.142"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php/Special:Contributions/175.223.33.142"/>
	<updated>2026-05-15T10:49:03Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%B0%A9%EB%AA%85%EB%A1%9D&amp;diff=49205</id>
		<title>데블스캠프2017/방명록</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%B0%A9%EB%AA%85%EB%A1%9D&amp;diff=49205"/>
		<updated>2017-07-01T03:49:23Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 첫째날 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 이름&lt;br /&gt;
| 기수(or학번)&lt;br /&gt;
|-&lt;br /&gt;
| 박인서&lt;br /&gt;
| 25기&lt;br /&gt;
|-&lt;br /&gt;
| 김상렬&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 이민욱&lt;br /&gt;
| 27기&lt;br /&gt;
|-&lt;br /&gt;
| 지무근&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 한재민&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 김민수&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 유재범&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 배상윤&lt;br /&gt;
| 27기&lt;br /&gt;
|-&lt;br /&gt;
| 김성민&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 신형철&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 이승찬&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 김유진&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 김선재&lt;br /&gt;
| 16학번&lt;br /&gt;
|-&lt;br /&gt;
| 최기수&lt;br /&gt;
| 12학번&lt;br /&gt;
|-&lt;br /&gt;
| 이민희&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 송성욱&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 성훈&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 이봉국&lt;br /&gt;
| 23기&lt;br /&gt;
|-&lt;br /&gt;
| 정진경&lt;br /&gt;
| 21기&lt;br /&gt;
|-&lt;br /&gt;
| 김호동&lt;br /&gt;
| 25기&lt;br /&gt;
|-&lt;br /&gt;
| 이승현&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 고한종&lt;br /&gt;
| 21기&lt;br /&gt;
|-&lt;br /&gt;
| 김민재&lt;br /&gt;
| 22기&lt;br /&gt;
|-&lt;br /&gt;
| 장혁재&lt;br /&gt;
| 23기&lt;br /&gt;
|-&lt;br /&gt;
| 안재형&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 권준혁&lt;br /&gt;
| 24기&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 둘째날 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 이름&lt;br /&gt;
| 기수(or학번)&lt;br /&gt;
|-&lt;br /&gt;
| 김성민&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 배상윤&lt;br /&gt;
| 27기&lt;br /&gt;
|-&lt;br /&gt;
| 박인서&lt;br /&gt;
| 25기&lt;br /&gt;
|-&lt;br /&gt;
| 이승찬&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 임창환&lt;br /&gt;
| 17기&lt;br /&gt;
|-&lt;br /&gt;
| 지무근&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 정진경&lt;br /&gt;
| 21기&lt;br /&gt;
|-&lt;br /&gt;
| 김호동&lt;br /&gt;
| 11학번&lt;br /&gt;
|-&lt;br /&gt;
| 안지수&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 송민준&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 한재현&lt;br /&gt;
| 27기&lt;br /&gt;
|-&lt;br /&gt;
| 송지원&lt;br /&gt;
| 16기&lt;br /&gt;
|-&lt;br /&gt;
| 안정원&lt;br /&gt;
| 23기&lt;br /&gt;
|-&lt;br /&gt;
| 이승현&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 안재형&lt;br /&gt;
| 27기&lt;br /&gt;
|-&lt;br /&gt;
| 김민수&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 한재민&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 이민욱&lt;br /&gt;
| 27기&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 셋째날 ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| 김상렬&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 김유진&lt;br /&gt;
| 17학번&lt;br /&gt;
|-&lt;br /&gt;
| 박인서&lt;br /&gt;
| 25기&lt;br /&gt;
|-&lt;br /&gt;
| 안지수&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 김성민&lt;br /&gt;
| 24기&lt;br /&gt;
|-&lt;br /&gt;
| 한재민&lt;br /&gt;
| 26기&lt;br /&gt;
|-&lt;br /&gt;
| 지무근&lt;br /&gt;
| 24기&lt;br /&gt;
|}&lt;br /&gt;
== 넷째날 ==&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49191</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49191"/>
		<updated>2017-06-28T08:58:44Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [] 와 {}&lt;br /&gt;
* [] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;yX,&amp;amp;y:X,&amp;amp;yX,&amp;amp;y ::X,&amp;amp;yX,&amp;amp;y ::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y=,&amp;amp;x,&amp;amp;y:=,&amp;amp;x,&amp;amp;y=,&amp;amp;x,&amp;amp;y ::=,&amp;amp;x,&amp;amp;y=,&amp;amp;x,&amp;amp;y ::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있음&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49190</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49190"/>
		<updated>2017-06-28T08:57:54Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [] 와 {}&lt;br /&gt;
* [] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있음&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49189</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49189"/>
		<updated>2017-06-28T08:57:40Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [ ] 와 { }&lt;br /&gt;
* [ ] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있음&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49188</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49188"/>
		<updated>2017-06-28T08:55:48Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [] 와 { }&lt;br /&gt;
* [] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있음&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49187</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49187"/>
		<updated>2017-06-28T08:55:36Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [] 와 { }&lt;br /&gt;
* [] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있음&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
** -----------------&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49186</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49186"/>
		<updated>2017-06-28T08:54:53Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [] 와 { }&lt;br /&gt;
* [] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있ㅇㅁ&lt;br /&gt;
** shared_ptr이 소 --------------&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
** -----------------&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49185</id>
		<title>데블스캠프2017/당신이들어보지못한C++이야기</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%8D%B0%EB%B8%94%EC%8A%A4%EC%BA%A0%ED%94%842017/%EB%8B%B9%EC%8B%A0%EC%9D%B4%EB%93%A4%EC%96%B4%EB%B3%B4%EC%A7%80%EB%AA%BB%ED%95%9CC%2B%2B%EC%9D%B4%EC%95%BC%EA%B8%B0&amp;diff=49185"/>
		<updated>2017-06-28T08:53:34Z</updated>

		<summary type="html">&lt;p&gt;175.223.33.142: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;당신이 들어보지 못한 C++ 이야기&lt;br /&gt;
* 봉봉의 봉봉를 위한 봉봉에 의한&lt;br /&gt;
&lt;br /&gt;
휴학을 해보세요&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== auto ==&lt;br /&gt;
* 마법의 키워드&lt;br /&gt;
* 컴파일 타임에 변수의 타입을 연역&lt;br /&gt;
* 사용하면 좋은 경우&lt;br /&gt;
** 템플릿 등을 사용하여 타입명이 길어질 때&lt;br /&gt;
** 타입이 명확하지 않은 경우&lt;br /&gt;
* 위 상황 이외에 사용하면 읽기가 더 난해해진다.&lt;br /&gt;
* auto를 사용한 새로운 함수 선언법&lt;br /&gt;
** 임의의 (같은 형이 아닌) 두 변수의 합을 구하는 함수?&lt;br /&gt;
** auto function -&amp;gt; decltype&lt;br /&gt;
** C++ 14부터는 그냥 auto로 (단, 재귀로 사용할 경우 첫번째 return 형)&lt;br /&gt;
** decltype(auto)도 가능해 짐&lt;br /&gt;
== 람다 표현식 ==&lt;br /&gt;
* 익명 함수를 인라인으로 작성&lt;br /&gt;
* [] 와 { }&lt;br /&gt;
* [] 캡쳐블록&lt;br /&gt;
** 지정한 scope에서 값들을 복사&lt;br /&gt;
** 원본갑소가 같은 지정자를 가진다 (const .. )&lt;br /&gt;
** ex) [[=]], [[&amp;amp;]], [[::X,&amp;amp;y x, &amp;amp;y]], [[::=,&amp;amp;x,&amp;amp;y =, &amp;amp;x, &amp;amp;y]]&lt;br /&gt;
* [[캡쳐블록]](파라미터 목록) MUTABLE 익셉션목록  속성지정 -&amp;gt; 리턴타입 {함수바디}&lt;br /&gt;
* 제너릭 람다 표현식&lt;br /&gt;
** 타입 추론 기능 지원 - 템플릿 인자 추론과 동일&lt;br /&gt;
* 캡쳐 표현식 -&amp;gt; scope 내에 있지 않더라도 포함 가능&lt;br /&gt;
* 템플릿 함수의 반환형 또는 파라미터로 사용&lt;br /&gt;
== 우측값 ==&lt;br /&gt;
* 상수값, 임시 객체(객체 반환값, 값으로서 객체를 파라미터로 사용) 등을 지칭&lt;br /&gt;
* rvalue reference를 나타내기 위해 &amp;amp;&amp;amp;를 사용&lt;br /&gt;
* std::move()를 통해 lvalue를 rvalue로&lt;br /&gt;
* 이동 시맨틱 &lt;br /&gt;
** 새로운 heap 영역을 할당하지 않고---------------------&lt;br /&gt;
== 스마트 포인터 ==&lt;br /&gt;
* 포인터를 관리하여 에일리어싱을 방지&lt;br /&gt;
* 레퍼런스 카운터를 내부적으로 가짐&lt;br /&gt;
* 이가 0이 될 때, 자동으로 delete 해준다.&lt;br /&gt;
* unique_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원 x, 단독 소유권, 스코프를 벗어나면 바로 해제&lt;br /&gt;
** 스택 기반의 객체 인스턴스를 동적으로 할당할 때 유용&lt;br /&gt;
** c 스타일 배열 저장&lt;br /&gt;
** C++ 14에서 추간된 MAKE_UNIQUE()&lt;br /&gt;
* shared_ptr &lt;br /&gt;
** 레퍼런스 카운터 지원, 스레드 세이프&lt;br /&gt;
** MAEK_SHARED()&lt;br /&gt;
** 추가적으로 타입캐스를 하기 위한 함수를 제공&lt;br /&gt;
** c 스타일 배열 저장 x&lt;br /&gt;
* weak_ptr&lt;br /&gt;
** shared ptr을 관리하는 포인터를 담을 수 있ㅇㅁ&lt;br /&gt;
** shared_ptr이 소 --------------&lt;br /&gt;
** 포인터에 접근하기 위해서는 shared_ptr로 변환해야 하는데,&lt;br /&gt;
** lock()&lt;br /&gt;
** 생성자에 weak_ptr를 인자로&lt;br /&gt;
&lt;br /&gt;
== 예외처리 == &lt;br /&gt;
* 생성자에서 발생하는 에러&lt;br /&gt;
** 기본적으로 스마트 포인터를 사용하면 해결 가능&lt;br /&gt;
** 초기화 리스트에서 에러 -&amp;gt; 함수 try 블록으로 해결&lt;br /&gt;
** 몇 가지 주의점이 있지만,&lt;br /&gt;
** 초기화 리스트에서 발생한 익셉션을 다른 익셉션으로 변환해서 던질 때&lt;br /&gt;
** 에러 메세지 로깅&lt;br /&gt;
** 익셉션 발생 전에 이미 할당된 메모리를 해제할 때&lt;br /&gt;
* 소멸자에서 발생하는 에러&lt;br /&gt;
** 내부에서 처리해야 한다.&lt;br /&gt;
** -----------------&lt;br /&gt;
== 마치며 ==&lt;br /&gt;
* 어렵고 난해한 언어이지만,&lt;br /&gt;
* 애정을 갖고 배웁시다&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>175.223.33.142</name></author>
	</entry>
</feed>