‫Xin chào và chào mừng.
‫Trong bài giảng này, chúng ta sẽ làm cho bản in thành phần kích hoạt của chúng ta được khóa lại khi nó có không
‫gian trống và khi chúng ta đặt gargoyle vào, nó sẽ mở khóa.
‫Và nếu tôi lấy nó ra một lần nữa, nó sẽ bị khóa lại.
‫Và cách chúng tôi sẽ làm điều này là rút chức năng của chúng tôi ra để tìm xem chúng tôi có một tác
‫nhân được chấp nhận vào chức năng riêng biệt của nó hay không.
‫Và chúng ta sẽ tìm hiểu về lợi nhuận sớm trong vòng bốn vòng.
‫Để làm được điều đó, chúng ta hãy đi sâu vào.
‫Vì vậy, đoạn mã này mà chúng tôi có trong thành phần công nghệ đã bắt đầu cảm thấy giống như một chức năng đối với
‫tôi.
‫Về cơ bản, đó là một chức năng nắm giữ tác nhân được chấp nhận, nếu chúng ta có, vì vậy chúng ta có thể tiếp tục
‫với thành phần kích hoạt của mình.
‫Và dưới phần riêng tư, hãy tạo một chức năng như vậy.
‫Bây giờ, kiểu trả về của nó nên là gì?
‫Tôi nghĩ nó phải là con trỏ A, luôn có thể là con trỏ null nếu không có tác nhân nào được
‫chấp nhận.
‫Vì vậy, chúng ta có thể gọi điều này là nhận được tác nhân có thể chấp nhận được là dấu ngoặc đơn trống.
‫Chúng ta không cần phải cho nó bất cứ thứ gì.
‫Và bởi vì nó không thay đổi chức năng của chúng ta, chúng ta có thể làm cho nó là const.
‫Hãy tiếp tục và triển khai điều này trong tệp CPP.
‫Chúng tôi sẽ thụt lề nó, cung cấp cho bạn một dấu hai chấm, dấu hai chấm và thay thế nó bằng dấu chấm phẩy bằng dấu
‫ngoặc nhọn.
‫Và sau đó, mã chúng tôi muốn về cơ bản là nội dung của thành phần tic, ngoại trừ những gì chúng tôi không muốn làm là
‫chỉ ghi lại rằng chúng tôi đã mở khóa diễn viên ở đây.
‫Những gì chúng tôi muốn làm là trong trường hợp chúng tôi đã tìm thấy diễn viên này, về cơ bản chúng tôi muốn trả lại nó.
‫Vì vậy, có một số cách chúng tôi có thể làm điều này.
‫Chúng ta có thể nói khi bắt đầu hàm của chúng ta rằng có một con trỏ tác nhân, con trỏ này sẽ là tác nhân
‫trả về và theo mặc định, chúng ta đặt nó thành con trỏ null.
‫Vì vậy, không có diễn viên nào mà chúng tôi sẽ trở lại.
‫Nhưng khi chúng tôi đi qua vòng lặp for của mình và cuối cùng chúng tôi tìm thấy một diễn viên có
‫thẻ được chấp nhận, thì chúng tôi có thể nói, Này, diễn viên quay lại thực sự phải trỏ đến con trỏ diễn viên mà chúng tôi đã tìm thấy ở
‫đây trong mảng của chúng tôi.
‫Và ở cuối vòng lặp for, sau khi vòng lặp for kết thúc, chúng ta đã xem qua tất cả các tác nhân.
‫Chúng ta có thể tiếp tục và trả về biến tác nhân trả về vì đó là kiểu phù hợp.
‫Không sao đâu.
‫Nhưng nó yêu cầu chúng ta tạo một biến và nó cũng yêu cầu chúng ta chạy qua toàn bộ vòng lặp for, ngay cả khi
‫chúng ta đã tìm thấy một tác nhân có thể chấp nhận được.
‫Vì vậy, một cách tốt hơn để làm điều này là sử dụng trả lại sớm.
‫Và chúng tôi đã từng thấy điều này trước đây khi chúng tôi lấy được CP mà chúng tôi đã thực hiện điều này.
‫Nếu xử lý vật lý bằng một con trỏ null, thì chúng tôi trả về và phần còn lại của thành phần đánh dấu không
‫cần phải chạy.
‫Chúng ta cũng có thể sử dụng cùng một loại hiệu quả trong vòng lặp for.
‫Vì vậy, những gì tôi sẽ làm là nếu chúng tôi đã tìm thấy diễn viên chấp nhận được, chúng tôi sẽ chỉ làm một diễn viên trở lại.
‫Theo nghĩa đen, chúng tôi đang trả về con trỏ mà chúng tôi vừa tìm thấy trong vòng lặp for này và phần còn lại
‫của vòng lặp for không cần phải chạy.
‫Tuy nhiên, nếu chúng ta đi đến cuối vòng lặp for và chúng tôi không tìm thấy gì cả, chúng tôi không trả về bất kỳ
‫thứ gì, việc trả về sẽ dừng vòng lặp for, rời khỏi hàm.
‫Nhưng nếu chúng ta đi đến cuối cùng, chúng ta cần trả lại một cái gì đó theo mặc định.
‫Đây là nơi chúng ta có thể trả về con trỏ null.
‫Vì vậy, đây là giá trị mặc định.
‫Nó có nghĩa là chúng ta đã xem qua toàn bộ vòng lặp for.
‫Chúng tôi đã thấy rằng không có diễn viên nào được chấp nhận.
‫Không có diễn viên nào mà chúng ta đang chồng chéo.
‫Với thẻ chính xác.
‫Vì vậy, chúng tôi trả về con trỏ null.
‫Vì vậy, bây giờ điều đó có nghĩa là tôi đã có biến tác nhân trả lại dư thừa này mà tôi có thể tiếp tục và loại bỏ.
‫Và điều này đọc thực sự khá rõ ràng.
‫Chúng tôi đang đi qua, chúng tôi đang nhận được các tác nhân chồng chéo, chúng tôi đang thực hiện một vòng lặp đầy đủ đối với chúng.
‫Nếu mỗi tác nhân chúng tôi kiểm tra nó, nó đã có thẻ, thẻ chấp nhận được chưa?
‫Nếu nó xảy ra, chúng tôi dừng ngay tại đó.
‫Chúng tôi trả lại cái đó.
‫Nếu không ai trong số họ có nó, chúng tôi trả về một con trỏ null.
‫Vì vậy, hãy thử thách bạn đăng nhập nếu chúng tôi tìm thấy diễn viên.
‫Vì vậy, hãy gọi hàm của chúng tôi trong thành phần đánh dấu của bạn.
‫Kiểm tra xem con trỏ có rỗng hay không và đăng nhập trong cả hai trường hợp, cả hai trường hợp chúng ta có một tác nhân hay chúng ta
‫không sử dụng câu lệnh if và else.
‫Tạm dừng video và tiếp tục.
‫KAYE.
‫Chào mừng trở lại.
‫Vì vậy, chúng ta hãy xem xét các thành phần công nghệ của chúng tôi.
‫Những gì chúng ta sẽ làm là chúng ta sẽ tạo ra một biến, một con trỏ diễn
‫viên, sẽ là tác nhân, tương đương với việc có được diễn viên được chấp nhận.
‫Sau đó, chúng ta sẽ làm nếu tác nhân không bằng con trỏ null, thì trong phần nội dung này, chúng ta sẽ
‫thực hiện mở khóa nhật ký u và sau đó trong nhật ký khác mà bạn đăng nhập lần này đang khóa lại vì đó là hành vi tôi muốn của chúng tôi
‫kích hoạt thành phần và di chuyển nó cùng nhau để có là nếu bạn đã có gargoyle ở
‫đó, nó sẽ mở khóa, nó sẽ sử dụng trình di chuyển và nó sẽ được khóa lại nếu về cơ bản chúng ta
‫bỏ chọn hộp kiểm đang di chuyển nếu chúng ta loại bỏ gargoyle.
‫Vì vậy, hãy biên dịch nó.
‫Vì vậy, chúng ta hãy tiếp tục và chơi.
‫Bạn có thể thấy nó đang bị khóa lại vì chúng tôi không có gargoyle ở đó.
‫Nhặt gargoyle và đưa anh ta đến.
‫Và ở đó bạn đi.
‫Bây giờ nó đang mở khóa, hãy lấy nó ra và nó đang khóa mở khóa, đang khóa lại.
‫Hoàn hảo.
‫Nếu tôi bước vào trong, không có gì xảy ra.
‫Nó chỉ đang khóa lại.
‫Vì vậy, chúng tôi đã thành công trong việc tìm hiểu xem liệu chúng tôi có thứ gì đó trong thành phần kích hoạt của
‫mình hay không.
‫Bây giờ chúng ta chỉ cần làm cho nó làm một cái gì đó.
‫Và đó sẽ là chủ đề của bài giảng tiếp theo.
‫Tôi sẽ gặp bạn ở đó.