Tạo reverse_iterator rbegin() và rend() và cho lớp MyString

Mong mọi người chỉ em với ạ? Làm sao để em cài lại cái reverse_iterator cho đúng ?

class MyString
{
private:
	char *m_string;
	int m_size;
	int m_reserved_size;
public:
        typedef char * reverse_iterator;
	typedef const char * const_reverse_iterator;

        reverse_iterator rbegin();
       {
                 return reverse_iterator(end());
       }
	const_reverse_iterator rbegin() const;

	reverse_iterator rend();
       {
                return reverse_iterator(begin());
       }
	const_reverse_iterator rend() const;
int main()
{
        MyString str("this is a test string");
	MyString::reverse_iterator rit;
	for (rit = str.rbegin(); rit != str.rend(); rit++)cout << *rit;   // Kết quả phải ra là gnirts tset a si siht
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?