Я объявил-структуру, как это:Нажимать в вектор структуры элемент этого вектора
struct Point{
double x,y;
Point(){}
Point(double xx,double yy): x(xx),y(yy){}
};
И я пытаюсь заполнить вектор вроде этого:
vector<Point> s(1);
Point tmp(1,2);
s[0]=tmp;
s.push_back(s[0]);
К сожалению , это дает мне неправильный ответ, когда я показываю содержимое s [1], но s.push_back((Point)s[0])
приводит к ожидаемому ответу (например, копия s [0]).
В чем разница между s.push_back(s[0])
и s.push_back((Point)s[0])
, что объясняет это differennce?
Есть ли какие-либо преобразования типа авто или что-то под капотом?
's.push_back ((Point [0]))' не имеет смысла, 'Point' является типом. – Borgleader
Какой неправильный/правильный ответ на что? – Svalorzen
'vector s (2, Point (1, 2))' будет намного лучше. –
DimChtz