次の方法で共有


14.6.2 の依存ファイルの名前

Visual C++ コンパイラは最初にそのテンプレートを解析するときの名前 nondependent 結合をサポートしていません。これはテンプレートをインスタンス化する前にオーバーロードを表示するテンプレートの後に () を宣言できます。

// DependentNames.cpp
#include <stdio.h>
namespace N {
   void f(int) { printf("f(int)\n");}
}

template <class T> void g(T) {
   N::f('a');   // calls f(char) should call f(int)
}

namespace N {
   void f(char) { printf_s("f(char)\n");}
}

int main() {
   g('c');
}

w98s4hs8.collapse_all(ja-jp,VS.110).gif出力

f(char)

参照

その他の技術情報

非標準の動作