Я должен реализовать класс Vector, который устанавливает координаты многомерного вектора и будет работать при вызове с этим определенным кодом (я не могу изменить эту часть):Множественный оператор точка (с ++ класс)
const int NumOfDimensions = 5;
Vector x (NumOfDimensions);
x.Set(0, 1.1).Set(1, 1.2).Set(2, 1.3).Set(3, 1.4).Set(4, 1.5);
x.print();
и выход должен быть таким:
(1,1, 1,2, 1,3, 1,4, 1,5)
Это то, что Я пытался, но не мог заставить его работать:
class Vector {
float *coordinates;
int dimensions;
public:
Vector(int k)
{
coordinates = new float[k];
dimensions = k;
}
void Set(int k, float wsp)
{
//Vector x(k+1);
coordinates[k] = wsp;
//return x;
}
void print()
{
int i;
cout<<"(";
for(i=0; i<dimensions; i++)
cout<<coordinates[i]<<", ";
cout<<")"<<endl;
}
};
Так что я знаю функцию Set необходимо изменить и, возможно, вернуть объект, но я пробовал много разных способов, и он просто не работает. Как мне его изменить?
Спасибо! он работает, не могу поверить, что я потратил 2 часа на это, а затем получил ответ здесь через 1 минуту. – mushisgosu
Это необычный шаблон для использования на C++, который, вероятно, почему вы не видите многого для него. – tadman
@mushisgosu, если ответ решил вашу проблему, вы должны отметить его как принятый. –