оператор присваивания внутри функционального параметра C++

Я изучаю структуры данных (Список, Стек, Очередь), и эта часть кода меня смущает.

ListNode( const Object& theElement = Object(), ListNode * node = NULL);


template<class Object>
ListNode<Object>::ListNode( const Object& theElement, ListNode<Object> * node) {
    element = theElement;
    next = node;
}
  1. Почему в параметрах функции есть операторы присваивания?
  2. Что делает вызов Object()?
10
задан Harry Cho 11 April 2012 в 10:45
поделиться