Простите меня, если информация немного отсутствует, поскольку я стараюсь следовать рекомендуемым «Рекомендациям».Почему мой конструктор классов не инициализирует его переменные-члены?
Я создал класс под названием «Item» для хранения информации элемента и определили мой конструктор следующим образом:
Item::Item(std::string number, std::string name, int quantity, double price) {
itemNumber = number;
itemName = name;
quantity = quantity;
unitPrice = price;
}
и я инициализировать его в своей основной функции, как так:
Item temp("string", "string", 0, 0);
но когда я печатал значения элемента, напечатано только itemNumber и itemName. Все, что напечатано, было случайным мусором. Тогда я понял, что проблема заключается в количестве, и цена не получает инициализации. Почему это?
Пожалуйста, отправьте сообщение [MCVE] (http://stackoverflow.com/help/mcve) –
Вы должны использовать уникальные имена переменных. Это также является одной из причин, по которым различные руководства по стилям предлагают префикс '' m_'' для переменных, которые являются переменными-членами, например. 'm_quantity = quantity' – CoryKramer
О, ничего себе, это почти все. Не могу поверить, что я пропустил это. Благодаря! – Eddie