下面是我的 String 类的代码。我想实现 reverse_iterator 和 rbegin() 和 rend() 方法。已粘贴分配方法的代码。String::reverse_iterator rbegin = str2.rbegin(); String::reverse_iterator rend = str2.rend(); for(String::reverse_iterator b = rbegin; b!= rend;++b) { cout<<*b; }
class String {//my custom string class
public:
class iterator:public std::iterator<std::random_access_iterator_tag, char> {
public:
iterator():ch(NULL){}
iterator(const iterator& it) : ch(it.ch) {}
char& operator*() { return *ch; }
iterator& operator++() {
ch = ch+1;
return *this;
}
bool operator==(const iterator& rhs) {
return ch == rhs.ch;
}
bool operator!=(const iterator& rhs) {
return ch != rhs.ch;
} …Run Code Online (Sandbox Code Playgroud)