01/10/2018, 10:40

Tạo toán tử [ ]

Giả sử:

struct A{
	int n;
	A *nxt;
};

Em xin code: operator[ ] với, em cảm ơn nhiều!

Ví dụ có DSLK={3,4,5,6}, với:

int Var = DSLK[2].n;

thì giá trị của Var là 5.

Henry viết 12:47 ngày 01/10/2018
0   1   2   3    vị trí
3   4   5   6    giá trị
Nguyên Trọng viết 12:51 ngày 01/10/2018

à, em xin lỗi, yêu cầu sai à, em xin phép sửa!

HelloWorld viết 12:53 ngày 01/10/2018

ý bạn là nạp chồng toán tử lấy phần tử [n] trong mảng mà con trỏ nxt trỏ đến hả?

rogp10 viết 12:53 ngày 01/10/2018

Đầu tiên bạn phải xác định nó có nghĩa là gì đã, vì bạn chỉ dùng node thôi chứ không dùng danh sách đầy đủ.

Nguyên Trọng viết 12:51 ngày 01/10/2018

Ý của em là sau khi tạo 1 danh sách liên kết, em muốn nạp chồng toán tử để truy cập vào node đó.
Ví dụ truy cập vào node đầu của danh sách liên kết thì em chỉ cần thêm [0] vào sau danh sách đó như phần ví dụ ở trên, giống như string hay vector.

Dark.Hades viết 12:45 ngày 01/10/2018
  1. Tạo danh sách liên kết (struct DSLK gồm pHead, pTail) của struct A
  2. Trong struct DSLK, nạp chồng [] tham biến int x (tìm Node A vị trí x của DSLK)
    2.1 Trong toán tử hàm nạp chồng [], tạo con trỏ A *current = DSLK->pHead;
    2.2 Tạo vòng for chạy từ i đến x
    2.3 Gán con trỏ current tới current.nxt
    2.4 return current
Nguyên Trọng viết 12:56 ngày 01/10/2018

Em xin code được không ạ? Em dùng VS thì nó không cho phép nạp [ ] tuy nhiên khi thử với + thì nó lại được, em cũng không biết vì sao!

Dark.Hades viết 12:48 ngày 01/10/2018

Hàm nạp chồng bạn viết như thế nào mà không được?
Bạn đưa code bạn lên đây mọi người sẽ giúp bạn xem lỗi.
Hỏi bài chắc không ai làm hộ bạn đâu

Nguyên Trọng viết 12:51 ngày 01/10/2018

Nó gạch chân đỏ

Dark.Hades viết 12:44 ngày 01/10/2018

Trong struct DSLK, nạp chồng [] tham biến int x (tìm Node A vị trí x của DSLK)

Bạn áp dụng câu này của mình là nó nhận,
Toán tử [] nó chỉ nhận tham biến với kiểu dữ liệu int thôi bạn nhé.
http://en.cppreference.com/w/cpp/language/operators#Array_subscript_operator

rogp10 viết 12:49 ngày 01/10/2018

Viết đúng nhất là dùng (const) reference.

Bài liên quan
0