当我尝试返回 float 组时,出现此错误:
Cannot implicitly convert type 'float[]' to 'float'
我正在使用 OpenTK 用 C# 制作 2d 游戏引擎 我正在研究顶点类,但我不断收到错误并且陷入困境。
我已经尝试过这个:
return data[vertices.Length * Size];
代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenTK;
namespace RacerEngine
{
public class Vertex
{
private const int Size = 2;
private Vector2 position;
public Vector2 Position
{
get
{
return position;
}
set
{
position = value;
}
}
public Vertex(Vector2 position)
{
this.position = position;
}
public static float Process(Vertex[] vertices)
{
float[] data = new float[vertices.Length * Size];
for(int i = 0; i < vertices.Length; i++)
{
data[i] = vertices[i].position.X;
data[i + 1] = vertices[i].position.Y;
}
return data;
}
}
}
最佳答案
您的方法Process
被定义为返回一个float
,但您的return语句从中返回一个float []
。根据您的需要,将方法签名更改为
public static float[] Process(Vertex[] vertices)
或者从方法中返回一个float
。
关于c# - 返回 float 组时出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55429498/