Не могли бы объяснить в чём заключается задание, указатель на float это указатель на элемент вектора или на массив элементов?
Создать абстрактный тип данных (КЛАСС) - вектор, который имеет указатель на float и число элементов. Определить функции: инициализации, удаления вектора, установки/ изменения размера, доступа к элементам вектора, вычисления суммы элементов вектора. Для примера, в функции main, организовать поэлементное умножение двух векторов.
Ответы (2 шт):
вектор, который имеет указатель на float и число элементов
исходя из этого мне кажется, что имеется в виду указатель на массив float, т.е.
class MyVector {
protected:
float* m_data = nullptr; // непосредственно данные вектора
int m_size = 0; // размер вектора
public:
// изменить размер вектора
void resize(const int size) {
// создать вектор нового размера
float* new_data = new float[size];
// скопировать данные
for (int index = 0; index < min(size; m_size); index ++)
new_data[i] = m_data[i];
// заменить данные
delete [] m_data;
m_data = new_data;
}
}
думаю, что имелось в виду именно это
P.S.
в resize я конечно много чего не написал - типа проверки, что m_data != nullptr, обнуление нового массива и т.д.
Примерно так:
class Vector
{
private:
float * array;
int count;
...
count - количество элементов в массиве, на который указывает array.