当前上下文中不存在名称“xxxx”

时间:2014-11-05 23:42:35

标签: c# xna

所以我正在使用 XNA创建一个Mario翻拍(因为我的理解仍然非常有限,因此我按照教程进行了修改),并且我遇到了一个错误" text& #34;

using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;


namespace PersonalProject.Managers
{
    class TileManager
    {

        ArrayList mTiles;

        public TileManager()
        {
            mTiles = new ArrayList();
        }

        public void AddTile(Texture2D tile, Vector2 pos)
        {
            mTiles.Add(new Tile(text, pos));
        }

        public void Draw(SpriteBatch spriteBatch)
        {
            foreach (Tile tile in mTiles)
            {

            }
        }
    }
    class Tile
    {
        public Texture2D texture;
        public Vector2 position;

        public Tile(Texture2D text, Vector2 pos)
        {
            texture = text;
            position = pos;
        }
    }
}

mTiles.Add(new Tile(text, pos));

我得到"名称'文字'在当前背景下不存在"即使我有

public Tile(Texture2D text, Vector2 pos)
        {
            texture = text;
            position = pos;
        }

" POS"我不是输出任何错误,有什么想法吗?

2 个答案:

答案 0 :(得分:3)

这里的上下文是以下方法:

public void AddTile(Texture2D tile, Vector2 pos)
{
    mTiles.Add(new Tile(text, pos));
}

text变量不在那里。

我猜你的意思是:

public void AddTile(Texture2D tile, Vector2 pos)
{
    mTiles.Add(new Tile(tile, pos));
}

public void AddTile(Texture2D text, Vector2 pos)
{
    mTiles.Add(new Tile(text, pos));
}

答案 1 :(得分:0)

替换:

public void AddTile(Texture2D tile, Vector2 pos)
    {
        mTiles.Add(new Tile(text, pos));
    }

使用:

public void AddTile(Texture2D tile, Vector2 pos)
    {
        mTiles.Add(new Tile(tile, pos));
    }