Skip to content

Commit 2171d7a

Browse files
authored
Update ITEM26.md
1 parent 1579593 commit 2171d7a

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

ITEM26.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# ITEM26: Forwarding Reference에 대하여 Overloading을 피하라!
2+
3+
### Forwarding Reference란?
4+
타입 추론이 발생하는 곳에서(template, auto 등) 사용되는 && Reference. 즉, 다음과 같다.
5+
```c++
6+
template<typename T>
7+
void hello(T&& yaho);
8+
```
9+
또는
10+
```c++
11+
auto&& babo;
12+
```
13+
14+
### Overload Resolution Rule
15+
1. 묵시적 타입 캐스팅(Implicit type casting)이 일어나는 것보다 타입이 정확하게 일치하는 것을 우선한다.
16+
2. 템플릿과 템플릿이 아닌 함수들이 똑같은 타입을 가지면 템플릿이 아닌 함수를 우선한다.

0 commit comments

Comments
 (0)