以下のようにいくつかのグローバル変数を定義するクラスがあります。
namespace Algo
{
public static class AlgorithmParameters
{
public int pop_size = 100;
}
}
main()を含む別のcsharpファイルとmain()で、構造体型の配列と配列サイズをpop_sizeとして宣言していますが、でエラーが発生し"chromo_typ Population[AlgorithmParameters.pop_size];"
ます。以下のコードを見つけてください。可変長サイズの配列宣言に間違った構文を使用していますか?
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];
}
}
}
}
エラーは次のとおりです。
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)
助けてください。