我正在尝试编译HDF5DotNet librabry。我正在使用http://www.hdf5.net/中的“HDF5DotNet源和示例”。
我可以在虚拟机中使用Visual Studio 2008和2010编译库。我仍然需要在Visual Studio 2012中运行它并得到以下错误:
Error 1: error C2668: 'System::Array::Copy' : ambiguous call to overloaded function ObjectReference.cpp, 30, 1, HDF5DotNet
Error 2: error C2668: 'System::Array::Copy' : ambiguous call to overloaded function RegionReference.cpp, 30, 1, HDF5DotNet
IntelliSense: more than one instance of overloaded function "System::Array::Copy" matches the argument list:
- function "System::Array::Copy(System::Array ^sourceArray, System::Array ^destinationArray, int length)"
- function "System::Array::Copy(System::Array ^sourceArray, System::Array ^destinationArray, long long length)"
我确实理解错误,但我不知道如何避免它。该应用程序目前是为x86构建的,但我希望以后可以选择为x64编译dll。
答案 0 :(得分:1)
只需将常量强制转换为int。
Array::Copy(a, m_rr, (int)H5R_DSET_REG_REF_BUF_SIZE);