以下是我的代码的一部分:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Content;
.
.
.
public virtual bool CheckCollision(ICollidable i_Source)
{
bool collided = false;
ICollidable2D source = i_Source as 2DICollidable;
if (source != null)
{
collided = source.Bounds.Intersects(this.Bounds);
}
return collided;
}
出于某种原因,使用ICollided2D时出错。 为什么它不识别这种变量?我是否会错过任何“使用”声明?
答案 0 :(得分:2)
这是打字错误:
ICollidable2D source = i_Source as 2DICollidable;
或者您在_
之前错过了2DICollidable
,因此无法使用数字启动标识符,因此它变为_2DICollidable
。
答案 1 :(得分:1)
这是什么?我不认为普通标识符可以从数字开始。甚至SO代码 - 荧光笔显示为红色。2DICollidable