【发布时间】:2013-05-16 06:26:40
【问题描述】:
这是我的代码。我有一个尝试和最后的声明。在 try 块中,我有一个设置指针变量的固定语句。
try
{
fixed (char* chRef = p)
{
//code
}
}
finally
{
chRef = null;
}
我正在努力寻找一种将固定指针变量设置为 null 的方法,无论 try 因范围而退出。请帮忙。
char* chRef;
try
{
fixed (chRef = p)
{
//code
}
}
finally
{
chRef = null;
}
给我“错误 12 在固定语句中声明的本地类型必须是指针类型”
【问题讨论】:
-
AFAIK,您必须在更广泛的范围内声明(您不必初始化它)
chRefvar。也就是说,在try之前。 -
哇一个 c# 中的指针。那很有意思。 :-)
-
@AndreCalil 感谢尝试过。给我分配的标识符预期错误。
-
你打算如何处理指向 NULL 的 chRef?
-
将其设置为 null 毫无意义。该变量超出了固定语句末尾的范围。如果你愿意,你不能滥用它。不要解决这个问题。
标签: c# scope try-catch finally