本文介绍了内部编译器使用包含gcroot的临时对象时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
#using< mscorlib.dll>
#include< vcclr.h>
public __gc class A {};
struct B {
void f(A * e);
gcroot< A *> e;
};
int main(){
B()。f(new A()); //注意B b; b.f(新A));工作正常
返回0;
}
#using <mscorlib.dll>
#include <vcclr.h>
public __gc class A {};
struct B {
void f(A* e);
gcroot<A*> e;
};
int main() {
B().f(new A()); // note that B b; b.f(new A)); works fine
return 0;
}
推荐答案
FWIW,ICE也发布了alpha版Whidbey编译器 -
我会尝试向MS报告。
Dave
-
MVP VC ++ FAQ:
虽然编译器提供ICE不正确,但代码是
示例有效吗?
Dave
-
MVP VC ++ FAQ:
这篇关于内部编译器使用包含gcroot的临时对象时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!