本文共 782 字,大约阅读时间需要 2 分钟。
定义一个类对list进行封装,使其可以通过下标对list进行操作
在C++编程中,为了实现对list的封装操作,可以定义一个类来将list的元素通过数组样式的方式访问。以下是实现方法:
#include#include
#include #include using namespace std;class Test{public: Test(); ~Test(); Test(list strList); string &operator[](int n);};Test::Test(list strList) { m_strList = strList; } string &Test::operator[](int n) { list ::iterator i = m_strList.begin(); vector
::iterator> vecStrIter; for (; i != m_strList.end(); i++) { vecStrIter.push_back(i); } return *(vecStrIter[n]); } int main() { string str[4] = {"a", "li", "ba", "ba!"}; list strList(str, str + 4); Test test(strList); cout << test[1] << endl; return 0; }
通过这种方式,可以通过类似数组的方式访问list中的元素。编译环境不会报告错误,且运行时不会出现未定义的行为。
转载地址:http://fbbkz.baihongyu.com/