pls have a look at this code:
template<typename T>
class myclass {
private:
  class node {
    friend class myclass;
    T t;
    node(T t_) : t(t_) {};
  };
  node nd;
  node getNode();
public:
  myclass(T t_) : nd(node(t_)) {};
  T get() {
    auto node = getNode();
    return node.t;
  }
};
template<typename T>
myclass<T>::node myclass<T>::getNode() {
  return nd;
}
I define the method getNode() outside the template, and the compiler report this error:
missing 'typename' prior to dependent type name 'myclass<T>::node'
myclass<T>::node myclass<T>::getNode() {
how should I write it correctly?