У меня есть следующий код для распечатки объекта Car.Все поля общедоступны.
void print_cars_array(Car cars[]) {
/**
* Prints all cars in the given car array.
*/
for(int i = 0; i < NUM_CARS; i++) {
std::cout << "Car #" << i + 1 << std::endl;
std::cout << cars[i].year << ' ' << cars[i].color << ' ' << cars[i].make << ' ' << cars[i].model << std::endl;
}
}
Однако, это дает мне следующий вывод:
Car #1
Subaru Outback
Car #2
Toyota Corolla
...
Сначала я подумал, что первые два поля были перепутаны, но изменяя циклна это:
void print_cars_array(Car cars[]) {
/**
* Prints all cars in the given car array.
*/
for(int i = 0; i < NUM_CARS; i++) {
std::cout << "Car #" << i + 1 << std::endl;
std::cout << cars[i].year << std::endl;
std::cout << cars[i].color << std::endl;
std::cout << cars[i].year << ' ' << cars[i].color << ' ' << cars[i].make << ' ' << cars[i].model << std::endl;
}
}
Производит следующее:
Car #1
2016
green
Subaru Outback
Car #2
2006
white
Toyota Corolla
Я что-то упустил, почему те не будут печатать?Все поля, кроме year
, являются строками, а year
- целыми числами.