【发布时间】:2017-04-29 01:24:00
【问题描述】:
我正在制作一个基本的城市建设者游戏(在控制台中)。我有一个方法(DrawMap)的问题。我无法将列表用作该方法的输入参数。我收到一大堆错误,所以这里是代码。
编辑:现在可以使用了,谢谢 kmatyaszek。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace City
{
public class map
{
public int m { get; set; } //Map size
public List<int> info { get; set; }
public List<int> fire { get; set; }
public List<int> police { get; set; }
public List<int> education { get; set; }
public List<int> health { get; set; }
public List<int> cursor { get; set; }
}
class Program
{
static void Main(string[] args)
{
map map1 = new map();
map1.m = 256;
map1.info = new List<int>();
for (int i = 0; i < map1.m; i++)
{
map1.info.Add(0);
}
map1.fire = new List<int>();
for (int i = 0; i < map1.m; i++)
{
map1.fire.Add(0);
}
map1.police = new List<int>();
for (int i = 0; i < map1.m; i++)
{
map1.police.Add(0);
}
map1.education = new List<int>();
for (int i = 0; i < map1.m; i++)
{
map1.education.Add(0);
}
map1.health = new List<int>();
for (int i = 0; i < map1.m; i++)
{
map1.health.Add(0);
}
map1.cursor = new List<int>() { 0, 0 };
DrawMap(map1.info, map1.cursor);
}
static void DrawMap(List<int> map1.info, List<int> map1.cursor)
{
int j = 0;
int k = 0;
for (int k = 0; k < Math.Sqrt(map1.m); k++)
{
Console.SetCursorPosition(map1.cursor[j], map1.cursor[k]);
for (int j = 0; j < Math.Sqrt(map1.m); j++)
{
Console.SetCursorPosition(map1.cursor[j], map1.cursor[k]);
Console.Write("A");
}
}
}
}
}
【问题讨论】:
-
您愿意分享这些错误吗?是不是跟
DrawMaps方法的参数赔率有关系? -
为什么你有像 map1.info 这样的变量名?这是c#中的非法变量名
-
@DanHunex 它是 map1 对象的一部分。它现在似乎工作得很好。
-
你不能这样声明变量。但是当您调用该方法时,您可以像这样传递它
-
@DanHunex 好吧,它似乎完美无缺。我应该怎么做呢?