2016-05-23 14 views
1

私たちがC++でテンプレート関数を呼び出すと、その時点でコンパイラがどのような特別な作業をしているのか分かりません。そのために、私たちはそのテンプレートクラスを呼び出したクラスを認識してからそれに応じて解決します。C++では、コンパイラはどのようにしてテンプレートへの呼び出しを処理しますか?

+4

コンパイラは、通話中に解像度の決定をたくさん作ります。あなたが理解していないものは不明です。おそらく、具体的な例が整理されています。コールと関連するすべての宣言を表示します。 –

+0

広すぎます。あなたは、仕様の主要部分がどのように実装されているかを尋ねています。コースを受講するか、本を読んでください。 – EJP

答えて

2

答えはコンパイラの種類によって異なる場合があります。たとえば、gcc/clangには2フェーズルックアップと呼ばれるものがあります。しかし、この機能はVisual Studioでは実装されていません。 SO上のこの他のポストは良い説明を与える:

Two phase lookup - explanation needed

また、この記事を見てみましょう:

c++ complier behaviour using template class

関連する問題