考慮以下模塊:使用非導出函數模板內的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和作品編譯成功,但如果我用f
替換g
,編譯器會抱怨:error C3861: 'id': identifier not found
。
如何解決?
您是否正在使用正確的模塊標誌?我認爲它不會從IDE本身起作用 – paulm