일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- conda
- sqlite
- C++
- Unity
- python
- mysql
- 배열
- SVN
- null
- FIND
- if
- DROP
- boost
- SSH
- 쉘
- autovacuum
- List
- expect
- pandas
- postgresql
- sql
- pi
- dataframe
- with
- Eclipse
- ubuntu
- Shader
- awk
- ngui
- c++11
- Today
- Total
その先にあるもの…
[C++] auto C++11 본문
컴파일시에 타입이 결정된다.
변수 선언시에 초기화 할 때 타입이 정해진다.
auto Value; //'auto' 형식을 추론할 수 없습니다(이니셜라이저 필요). CPPx11
auto NPCName = "BugKing";
auto number = 1;
int UserMode = 4;
auto* pUserMode = &UserMode;
auto& refUserMode = UserMode;
struct _InvenInfo{};
class CInvenInfo{};
auto structInven = new _InvenInfo;
auto classInven = new CInvenInfo;
class CItem{};
typedef std::list< CItem > List_Item;
List_Item listItem;
//std::lilst< CItem >::iterator를 auto로 줄일 수 있다.
//가독성 향상
class CFuncReturn
{
int i;
int& refI;
int j = 10;
public:
auto f() { return i; }
auto& refF() { return i; }
auto& refMember() { return refI; }
auto IsMaxLevel(int level)
{
if (level >= 100)
return true;
else
return false;
//return 0; //추론된 반환 형식 int가 bool과 충돌 에러
}
CFuncReturn() : refI(j) {}
}
// 함수 반환 값으로 쓸 수 있다.
CFuncReturn funcReturn;
auto rt = funcReturn.f();
auto& refFunc = funcReturn.refF();
refFunc = 20;
참조 : http://www.slideshare.net/jacking/modern-c-cpp11-14
'프로그래밍' 카테고리의 다른 글
[C++]초기화 리스트 (0) | 2016.06.08 |
---|---|
[C++]Range based for loop (0) | 2016.06.08 |
[C++] 유니코드로 변경하기 (0) | 2016.05.10 |
[C++] WideCharToMultiByte MultiByteToWideChar (0) | 2016.02.04 |
[C++] 복사 생성자 대입 연산자 (0) | 2015.04.09 |