Ich habe eine Klasse, die einige globale Variablen wie unten definiert:
namespace Algo
{
public static class AlgorithmParameters
{
public int pop_size = 100;
}
}
In meiner anderen csharp-Datei, die auch die main() enthält, und in der main() deklariere ich ein Array vom Typ Struktur und die Array-Größe als pop_size, aber ich erhalte einige Fehler auf "chromo_typ Population[AlgorithmParameters.pop_size];"
. Bitte finden Sie den Code unten. Verwende ich eine falsche Syntax für Array-Deklarationen mit variabler Länge?
namespace Algo
{
class Program
{
struct chromo_typ
{
string bits;
float fitness;
chromo_typ() {
bits = "";
fitness = 0.0f;
}
chromo_typ(string bts, float ftns)
{
bits = bts;
fitness = ftns;
}
};
static void Main(string[] args)
{
while (true)
{
chromo_typ Population[AlgorithmParameters.pop_size];
}
}
}
}
Fehler ist:
Bad array declarator: To declare a managed array the rank specifier precedes the variable's identifier. To declare a fixed size buffer field, use the fixed keyword before the field type.
Array size cannot be specified in a variable declaration (try initializing with a 'new' expression)
Bitte um Hilfe.