Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 无法加载类型…因为父级不存在_C++_Templates_Visual Studio 2008_Clr_.net 2.0 - Fatal编程技术网

C++ 无法加载类型…因为父级不存在

C++ 无法加载类型…因为父级不存在,c++,templates,visual-studio-2008,clr,.net-2.0,C++,Templates,Visual Studio 2008,Clr,.net 2.0,这类问题以前曾出现过,但我还没有找到一个明确的解释来解释到底发生了什么——“父母不存在”到底是什么意思 我的项目中有这个错误的部分,最近开始的,是单片的。是的,应用程序加载DLL,但据我所知,实例化缺失类型的代码和类型本身都在同一个程序集中 我有一个模板化托管类型,它本身是另一个模板化类型的子类: template <class T> public ref class my_class : public my_superclass<T> { // blah blah

这类问题以前曾出现过,但我还没有找到一个明确的解释来解释到底发生了什么——“父母不存在”到底是什么意思

我的项目中有这个错误的部分,最近开始的,是单片的。是的,应用程序加载DLL,但据我所知,实例化缺失类型的代码和类型本身都在同一个程序集中

我有一个模板化托管类型,它本身是另一个模板化类型的子类:

template <class T>
public ref class my_class : public my_superclass<T> {
   // blah blah blah
};
模板
公共引用类my_类:公共my_超类{
//废话废话
};
在不同的地方,这个模板有不同类型的专门化。除了使用
int
专用的版本外,它们都可以正常工作和加载。当应用程序运行(调试构建)时,该特定专门化的实例化会引发以下情况:

yourapp.exe中发生“System.TypeLoadException”类型的异常,但未在用户代码中处理

其他信息:无法加载类型 来自程序集“yourapp,版本=1.2.3.0,区域性=中立,PublicKeyToken=null”的“my_类”,因为父级不存在

同样,相同的程序集可以加载
myu类
myu类
myu类
,而无需眨眼,并且能够在以前的版本中加载
myu类


我试过彻底重建。我尝试过手动删除所有输出目录、重新启动和重建,但同样的问题仍然存在。我束手无策。这是什么意思?如何修复它?

异常意味着找不到父类型定义。此异常通常在引用“错误”程序集或使用“错误”类型时引发。你说我的_类以前在以前的版本中工作。这意味着您做了一些导致使用不同类型或程序集的事情。确保您正在使用的类型和正在加载的程序集是您真正需要的。