我需要创建另一个类的数组.例:
namespace std
{
public class Car
{
double number,id;
public Car()
{
// initializing my variables for example:
number = Random.nextdouble();
}
}
public class Factory
{
public Factory(int num)
{
Car[] arr = new Car(num);
}
}
}
Run Code Online (Sandbox Code Playgroud)
问题是我收到此错误:
'Car'不包含带'1'参数的构造函数
我只是需要有一个数组Car中的Factory类(汽车变量与它的构造函数初始化).
你刚刚使用了错误的括号.您总是使用方括号表示数组和索引器.圆括号用于调用方法,构造函数等.您的意思是:
car[] arr = new car[num];
Run Code Online (Sandbox Code Playgroud)
需要注意的是传统的.NET类型的Pascal-套管,所以你的类型应该是Car和Factory而不是car和factory.
还要注意,在创建数组之后,每个元素都将是一个空引用 - 所以你不应该写:
// Bad code - will go bang!
Car[] cars = new Car[10];
cars[0].SomeMethod(0);
Run Code Online (Sandbox Code Playgroud)
代替:
// This will work:
Car[] cars = new Car[10];
cars[0] = new Car(); // Populate the first element with a reference to a Car object
cars[0].SomeMethod();
Run Code Online (Sandbox Code Playgroud)