用于创建模板化嵌套类实例的语法?

时间:2018-10-13 18:17:09

标签: c++ class templates

快速问题:如何初始化?语法不起作用。

#include <iostream>

using namespace std; 
template<typename TYPE> 
class Heap1  {
    class Node {
        public:
            friend Heap1;

        private:
            TYPE elt;
            Node *child;
    }; // Node 
};

int main() {
    Heap1<int>.Node var;

    return 0; }

我正在阅读此答案,但语法对我来说不太清楚:Creating instance of nested class

1 个答案:

答案 0 :(得分:5)

Heap1<int>.Node var;
     

语法不起作用

尝试

Heap1<int>::Node var;

但是实际上,您不能。 Heap1<>::Nodeprivate,因此外界无法访问。