Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何将指针数组动态分配给对象?_C++_Arrays - Fatal编程技术网

C++ 如何将指针数组动态分配给对象?

C++ 如何将指针数组动态分配给对象?,c++,arrays,C++,Arrays,我不知道马的数量。我已经试过了,但是我有错误,我不知道为什么。我基本上是在尝试创建一个指向对象的指针数组。所有东西都在的那个班叫马。这是我的。我仍然从C++编译器中获得错误。 horse::horse(string horse_Name, string rider_Name, int distance_Traveled, int max_Distance_Per_Second) { distance_Traveled = 0; const int number_Of_Horse

我不知道马的数量。我已经试过了,但是我有错误,我不知道为什么。我基本上是在尝试创建一个指向对象的指针数组。所有东西都在的那个班叫马。这是我的。我仍然从C++编译器中获得错误。
horse::horse(string horse_Name, string rider_Name, int distance_Traveled, int max_Distance_Per_Second)
{

    distance_Traveled = 0;
    const int number_Of_Horses = 1;

    horse **ptr = new horse*[number_Of_Horses];

    *ptr[number_Of_Horses] =
    {
    horse(horse_Name, rider_Name, distance_Traveled, max_Distance_Per_Second)
    };


    max_Running_Distance_Per_Second(max_Distance_Per_Second);

}
由于未通过引用传递所经过的距离,因此不会更改原始值。这可能是一个错误

horse **ptr = new horse*[number_Of_Horses];
该指针声明正确;然而,当您尝试使用迭代(或其他表达式,仅限于我的猜测)时,您必须小心,因为:


当它是一个数组时,*ptr[number_Of_Horses]是非法的,因为数组以0而不是1开头。这是一个常见的错误。这可能是一个主要问题。

您遇到了哪些错误?您的问题不清楚您试图完成什么,以及您在哪里看到了错误。看见
horse **ptr = new horse*[number_Of_Horses];