C++内部类
来源:互联网 发布:linux 授权目录给用户 编辑:程序博客网 时间:2024/05/04 13:05
内部类可以访问外部类的private方法。#include <iostream>#include <vector>using namespace std;template <typename T>class MyList { public: MyList(vector<T>* list): v_(list) { } class Iterator { public: Iterator(MyList* plist): plist_(plist) { } T* Next(const T& key) { return plist_->FindGreaterOrEqual(key); } private: MyList * plist_; }; Iterator GetIterator() { return Iterator(this); } private: vector<T>* v_; T* FindGreaterOrEqual(const T& key) { for (size_t i = 0; i < v_->size(); i++) { if ( v_->at(i) < key) { } else { return &(v_->at(i)); } } return NULL; } };void test() { int myints[] = {1,2,3,40,50,60,70}; vector<int> va(myints, myints + sizeof(myints)/sizeof(int)); MyList<int> mylist(&va); int key = 4; //MyList<int>::Iterator it(&mylist); MyList<int>::Iterator it = mylist.GetIterator(); int* pa = it.Next(key); cout << "to find " << key << ", find " << *pa << endl;}int main() { test();}
0 0
- C++:内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- 内部类
- poj 3278 bfs(剪支)
- nginx-安装配置
- cxxxssxxsssss
- 按时打发飒飒发飒飒法师法师法师法师法师
- STL(9)之distance函数组源码
- C++内部类
- svn: PROPFIND request failed on '/svn/s3_SinoNewOfficeAutomation'
- 跟我一起学extjs5(06--使用图标字体来美化按钮)
- Android之SD卡文件浏览器
- hdu 1074 Doing Homework(状态压缩dp)
- 《算法导论》动态规划-思考题
- mac下用ImageOptim压缩png图片
- uva 1425 - Metal(递推)
- RPM 打包技术与典型 SPEC 文件分析