В этом проекте я должен создать класс Chain. Цепь будет списком значений (например, массива). Дело в том, что я должен создать эту цепочку без использования библиотеки STL.C++ Как реализовать этот один конструктор параметров?
Прямо сейчас, я должен реализовать этот один параметр конструктора:
Chain(const Object& item)
{
// Write something.
}
«Объект», кстати, только имя шаблона для класса.
У меня есть эти две частные переменные как часть класса:
size_t size_;
Object *array_;
Давайте говорить, что я хотел сделать этот звонок от основной:
Chain<int> d{7};
Вот только о том, проход 7 к одному параметру конструктор.
Как я могу реализовать этот конструктор параметров?
Кроме того, мне нужно, чтобы иметь возможность распечатать этот класс, если от основного типа I, например:
Chain<int> d{7}; // A chain containing 7 should be created.
cout << d; // Should just print [7]
Для того, чтобы сделать это, я должен реализовать этот перегруженный < < Оператор:
// Overloading the << operator.
friend std::ostream &operator<<(std::ostream &out, const Chain &a_chain)
{
// Print the chain.
return out;
}
Покушение код до сих пор:
// One parameter constructor.
Chain(const Object& item)
{
array_ = new Object[item];
// array_=item;
size_++;
}
// Overloading the << operator.
friend std::ostream &operator<<(std::ostream &out, const Chain &a_chain)
{
cout << array_ << endl;
return out;
}
Вы не можете использовать литерал, когда конструктор ожидает ссылки. Ссылка должна ссылаться на переменную. – Barmar
Все это жирным шрифтом довольно раздражает. Не говоря уже об отвлечении. –
@ Бармар: что? http://melpon.org/wandbox/permlink/Yhx9q3HtkkEay4Ee –