Visual-studio - C++로 이진 트리를 작성할 때 템플릿을 사용하고 친구 클래스를 설정하면 오류가 발생합니다.
迷茫
迷茫 2017-05-16 13:29:03
0
1
550

문제 설명

제목에서 알 수 있듯이 저는 최근에 데이터 구조를 배우고 이를 C++로 구현하면서 이진 트리를 구현할 때 다음과 같은 문제에 직면했습니다.

책의 코드에서 이진 트리는 두 개의 데이터 구조BinaryTreeBinartTreeNode로 구성되며, 둘 다 다음과 같이 템플릿을 사용합니다.

으아악

하지만 구현할 때 다음과 같은 오류가 발생했습니다.

샘플 코드:

으아악

오류:

1>e:itc++binarytreebinarytreemybianrytree.h(20): error C2989: “BinaryTree”: 类 模板 已经声明为非类 模板

오류 c2989

스크린샷:

환경:

visual studio 2017 + win10 (mac 듀얼 시스템)

걱정을 끼쳐드려 죄송합니다! !

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

모든 응답 (1)
曾经蜡笔没有小新
template  class BinaryTree; // 加一个前置声明 template  class BinaryTreeNode { friend class BinaryTree; /* 消除该句后可通过编译 */ private: T info; BinaryTreeNode left; BinaryTreeNode right; }; template  class BinaryTree { private: BinaryTreeNode *root; };

ps:segmentfault手机版真的跟屎一样啊,捏着鼻子用了这么久,才发现居然不能输入大于号小于号

    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿
    회사 소개 부인 성명 Sitemap
    PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!