Если создать объект класса Node, указав значения полей, то вылетят ошибки:
- error: expected identifier before 'nullptr'
- error: expected ',' or '...' before 'nullptr'
Вот сама программа (не весь класс BinaryTree):
#include <iostream>
using namespace std;
template <typename T>
class BinaryTree
{
private:
struct Node
{
T data;
Node *left, *right;
Node(T data=T(), Node *left=nullptr, Node *right=nullptr)
{
this->data = data;
this->left = left;
this->right = right;
}
};
Node root(T(), nullptr, nullptr);
};
int main()
{
}
Почему при указании значений возникают ошибки, а без этого - нет?