次のモジュール考えてみましょう。それを使用してC++モジュールでテンプレート内の非エクスポート機能を使用して
module M;
// a private, non-exporting function
int id(int x) {
return x;
}
export
template <class T>
int f(T x) {
return id(0);
}
export
int g(int y) {
return id(1);
}
そして、次のC++コード:
import M;
int main() {
g(42);
return 0;
}
をそれは成功し、VS2015のアップデート1でコンパイルして動作しますg
をf
に置き換えた場合、コンパイラはerror C3861: 'id': identifier not found
という文句を言います。
修正方法?
モジュールの正しいフラグに従っていますか?私はIDE自体からはうまくいかないと思う。 – paulm