How to set the Return Type of a Class Member Function as the object of a Private Struct
问题 sorry for the long and confusing title, but I couldn't think of a better way to ask this. So, what I have is a class: template <typename T> class Set { public: //random member functions here private: struct Node{ T key; Node *right; Node *left; int height; }; public: Node* r_add(Node *temp); }; Node* Set<T>::r_add(Node *temp) { return temp; } When I try to implement the function r_add, I keep getting the error that the return type of out-of-line definition differs from that in the declaration