‫Chào.
‫Chào mừng trở lại.
‫Bây giờ, chúng ta đã tạo một lớp cơ sở - C ++.
‫Trong video này, chúng ta sẽ bắt nguồn từ lớp đó để tạo một lớp con mới dựa trên cơ sở -.
‫Vì vậy, hãy thảo luận lý do tại sao chúng tôi muốn làm một điều như vậy.
‫Vì vậy, chúng ta có cơ sở - lớp này và chúng ta biết rằng chúng ta sẽ có hai lớp khác nhau bắt nguồn từ
‫cơ sở -.
‫Chúng ta sẽ có xe tăng của mình và chúng ta sẽ có tháp.
‫Bây giờ, phần đế - chứa các mắt lưới, một viên nang cũng như một điểm sinh sản.
‫Và đây là những thứ mà Tank và tower đều có thể kế thừa.
‫Nhưng xe tăng và tháp cũng sẽ có một số chức năng khác nhau.
‫Đầu tiên, chiếc xe tăng của chúng ta sẽ di chuyển khắp thế giới và nó cũng sẽ do người chơi
‫điều khiển.
‫Vì vậy, nó sẽ cần được cấu hình để nhận đầu vào từ bàn phím và chuột.
‫Mặt khác, tòa tháp sẽ chỉ ngồi ở đó.
‫Nó không cần bất kỳ đầu vào nào từ người chơi vì tất cả các hành động của nó sẽ được điều khiển bằng mã.
‫Vì vậy, bởi vì xe tăng và tháp sẽ hoạt động khác nhau, chúng tôi sẽ sử dụng tính năng kế thừa để tạo
‫ra các lớp cơ sở con - vì vậy chúng tôi có thể kế thừa những điểm chung của chúng và sau đó thêm vào mỗi lớp những
‫tính năng đó sẽ khác nhau.
‫Vì vậy, chúng ta quay lại đây trong trình soạn thảo và tôi sẽ đi vào các lớp C ++ của chúng ta, thư mục
‫của Tune Tank nơi chúng ta có lớp cơ sở của mình và đây sẽ là lớp mà chúng ta lấy từ đó.
‫Bây giờ chúng ta có thể nhấp chuột phải vào đây và chọn tạo lớp C ++ có nguồn gốc từ cơ sở -.
‫Vì vậy, hãy chọn điều đó và tôi sẽ cho phép nó gắn lớp này trong cùng một thư mục bể điều chỉnh nguồn
‫gạch chéo làm cơ sở -.
‫Và đối với tên của nó, tôi sẽ gọi nó là xe tăng.
‫Vì vậy, loại xe tăng của chúng tôi sẽ là loại xe tăng thực tế của chúng tôi - loại xe tăng mà chúng tôi đang kiểm soát và di chuyển
‫trên thế giới.
‫Vì vậy, chúng ta hãy nhấp vào tạo lớp.
‫Được rồi, vì vậy chúng tôi đã biên dịch và mã vs đã được mở với tệp xe tăng mới của chúng tôi và chúng tôi cũng có CP Xe tăng.
‫Bây giờ những thứ này khá trần trụi.
‫Thực sự không có gì ở đây, nhưng mặc dù chúng tôi không thể nhìn thấy chúng, chúng tôi đã thừa hưởng một số
‫thứ từ lớp cơ sở.
‫Chúng tôi có những thành phần mà chúng tôi đã thêm vào cơ sở -.
‫Mặc dù đó là các biến private, chúng vẫn tồn tại trong lớp này.
‫Vì vậy, bây giờ chúng tôi đã tạo ra lớp xe tăng của mình, hãy nói về một vài điều.
‫Xe tăng sẽ cần nhưng tháp pháo thì không.
‫Chà, vì chúng ta sẽ điều khiển xe tăng, nên chúng ta sẽ cần một cách để tập trung vào xe tăng
‫khi nó lăn lộn trong suốt màn chơi.
‫Bây giờ, trong hình này, đây là một thành phần máy ảnh.
‫Đó là lớp C ++ là thành phần máy ảnh của bạn.
‫Và dòng màu đỏ này ở đây được gọi là thành phần spring arm và lớp C ++ của nó là thành phần spring arm của bạn.
‫Việc thêm các thành phần này vào a - cho phép chúng tôi xem - từ quan điểm của máy ảnh.
‫Và nếu máy ảnh và cánh tay lò xo của nó được gắn vào - theo một cách nào đó, chúng sẽ theo - đi khắp
‫nơi trên thế giới.
‫Bây giờ, trở lại đây trong trình chỉnh sửa, nếu chúng ta quay lại thư mục của chúng ta và mở BP-tank, chúng ta có thể nhấp vào
‫khung nhìn để chúng ta có thể xem mọi thứ.
‫Và sau đó chúng ta có thể chọn phần tử nang và nhấp vào thêm và chọn cánh tay lò xo.
‫Đây là một thành phần cánh tay lò xo.
‫Nó trông giống như một đường màu đỏ.
‫Bây giờ với thành phần cánh tay lò xo của chúng tôi được chọn, chúng tôi có thể thêm một thành phần khác và chọn máy ảnh.
‫Bây giờ, khi chúng tôi đã thêm máy ảnh được gắn vào tay lò xo, giờ chúng tôi có một cách để xem từ
‫quan điểm của máy ảnh khi chúng tôi thực sự bắt đầu điều khiển -.
‫Bây giờ cánh tay lò xo khá hữu ích.
‫Nó có chiều dài cánh tay mục tiêu này và nếu bạn điều chỉnh nó, bạn sẽ thấy rằng máy ảnh điều chỉnh cùng với cánh tay
‫lò xo.
‫Vì vậy, đây là một cách để kiểm soát khoảng cách máy ảnh so với dấu -.
‫Vì vậy, đây chắc chắn là những thứ mà chúng tôi muốn trên lớp của mình, nhưng chúng tôi sẽ thêm chúng
‫từ phía C ++ thay vì chỉ thêm chúng ở đây trong bản thiết kế.
‫Vì vậy, tôi sẽ xóa chúng.
‫Vì vậy, đối với thử thách của bạn, tôi muốn bạn thêm một số thứ vào lớp xe tăng.
‫Đầu tiên, chúng ta cần một thành phần lò xo và một thành phần máy ảnh, vì vậy hãy tạo các biến này và biến chúng
‫thành con trỏ.
‫Hãy tiếp tục và tạo một phần công khai và riêng tư và đặt các biến này vào phần riêng tư.
‫Bây giờ chúng ta sẽ cần chúng là thuộc tính U, vì vậy hãy cung cấp cho bạn các macro thuộc tính và điền vào các macro đó
‫với các từ chỉ định thích hợp dựa trên những gì bạn đã học trong các bài giảng trước.
‫Bây giờ, khi bạn đã tạo các biến này, hãy tạo một hàm tạo và đặt nó trong phần công khai
‫và xác định nó trong tệp CP, sau đó bên trong hàm tạo xây dựng các thành phần máy ảnh và lò xo của chúng ta bằng cách
‫sử dụng tạo đối tượng phụ mặc định.
‫Đảm bảo sử dụng tệp đính kèm thiết lập để đính kèm các thành phần này vào thứ gì đó.
‫Chúng tôi muốn thành phần cánh tay lò xo của chúng tôi được gắn vào thành phần gốc.
‫Vì vậy, hãy sử dụng thành phần gốc và thiết lập phần đính kèm cài đặt và đối với máy ảnh, hãy gắn nó vào tay lò xo.
‫Bạn có thể tham chiếu trở lại lớp cơ sở.
‫A Nhắc nhở bản thân mã trông như thế nào để thực hiện những việc này.
‫Hãy tiếp tục và tạm dừng video và thêm những thứ này vào lớp xe tăng.
‫Được rồi.
‫Vì vậy, chúng tôi ở đây trong Tank.
‫Bây giờ, điều đầu tiên trước tiên.
‫Tôi muốn có một phần công khai và một phần riêng tư.
‫Vì vậy, phần private sẽ là nơi chúng ta thêm hai thành phần mới này.
‫Chúng ta sẽ muốn có một thành phần cánh tay lò xo chữ U, nó sẽ là một con trỏ và chúng ta có thể gọi đây là cánh tay
‫lò xo.
‫Và chúng tôi cũng sẽ cần một thành phần máy ảnh mới và chúng tôi sẽ gọi đây là máy ảnh.
‫Không sao đâu.
‫Nếu tên của bạn hơi khác.
‫Bây giờ, ngay lập tức, tôi đang thấy các lỗi IntelliSense ở đây, có nghĩa là tôi sẽ cần chuyển
‫tiếp các khai báo này.
‫Vì vậy, tôi sẽ sử dụng lớp học với cánh tay lò xo và lớp học với máy ảnh.
‫Và bây giờ chúng được khai báo phía trước.
‫Bây giờ chúng tôi cần các thuộc tính mới của chúng tôi.
‫Vì vậy, hãy thêm các macro thuộc tính mới.
‫Và bên trong macro thuộc tính, chúng ta sẽ muốn có một số chỉ định.
‫Chúng sẽ hiển thị ở bất cứ đâu vì chúng ta đã thấy rằng các thành phần cần phải hiển thị ở bất cứ đâu để chúng
‫ta có thể điều chỉnh các thông số của chúng trong bảng chi tiết.
‫Hiện tại, tôi không thấy có nhu cầu ngay lập tức về việc hiển thị biểu đồ sự kiện, vì vậy tôi không nghĩ rằng chúng ta chỉ
‫cần đọc, ghi hoặc đọc bản thiết kế chi tiết.
‫Không sao đâu.
‫Nếu bạn đã thêm chúng, tôi sẽ loại bỏ chúng ngay bây giờ.
‫Tôi sẽ cung cấp cho các loại này.
‫Và vì đây là các thành phần, tôi sẽ chỉ đưa chúng vào danh mục thành phần của chúng tôi cùng với các thành phần
‫khác của chúng tôi.
‫Bây giờ tôi không hiển thị chúng với biểu đồ sự kiện, vì vậy tôi không cần thẻ meta cho phép truy cập riêng tư của chúng tôi được chỉ định
‫ở đây.
‫Vì vậy, điều này là đủ cho cánh tay lò xo và tôi muốn cung cấp cho thành phần máy ảnh cùng thuộc tính với bạn.
‫Vì vậy, tôi đang sao chép nó.
‫Vì vậy, bây giờ chúng tôi có các thành phần của chúng tôi.
‫Việc tiếp theo cần làm là xây dựng chúng trong hàm tạo, có nghĩa là chúng ta cần một hàm tạo.
‫Bây giờ hàm tạo sẽ có cùng tên với lớp, vì vậy nó là một bể chứa và chúng ta cần xác định hàm tạo này
‫trong tệp CP.
‫Vì vậy, chúng ta hãy đi đến Tank CP và tạo một chiếc xe tăng.
‫Vì vậy, có phần thân hàm của chúng ta và hàm tạo bể chứa phải được bắt đầu bằng tên lớp của chúng ta và toán
‫tử phân giải phạm vi.
‫Đó là những dấu hai chấm ở đây.
‫Bằng cách đó, chúng ta không chỉ tạo một hàm mới mà còn xác định hàm tạo của chúng ta cho lớp này.
‫Bây giờ chúng tôi muốn xây dựng các thành phần này.
‫Vì vậy, hãy bắt đầu với cánh tay lò xo.
‫Vì vậy, chúng ta sẽ nói spring arm bằng tạo đối tượng con mặc định và đây sẽ là thành phần u spring arm.
‫Và đối với văn bản, tôi sẽ chỉ đơn giản gọi đây là cánh tay mùa xuân.
‫Và đối với tệp đính kèm, chúng ta sẽ thiết lập Spring arm, thiết lập tệp đính kèm, chuyển vào thành phần gốc.
‫Hiện nay.
‫Tôi đã chờ đợi nó.
‫Nó đây.
‫Lỗi IntelliSense nói con trỏ đến loại lớp không hoàn chỉnh sử dụng thành phần nhánh lò xo.
‫Đó là bởi vì chúng tôi cần bao gồm tệp tiêu đề vì chúng tôi đang tạo và sử dụng thành phần Spring arm.
‫Vì vậy, đây là tài liệu động cơ không có thật của tôi và nếu tôi cuộn xuống, sẽ có bao gồm của tôi.
‫Vì vậy, tôi sẽ sao chép nó và dán nó ngay tại đây ở trên cùng, ngay dưới mép bể.
‫Bây giờ, chỉ là một lưu ý phụ nói chung, bạn sẽ giữ cho tệp tiêu đề lớp của mình được bao gồm ở
‫trên cùng và bao gồm các thành phần của bạn bên dưới tệp đó.
‫Vì vậy, chúng tôi có cánh tay mùa xuân của chúng tôi.
‫Đã đến lúc chế tạo máy ảnh.
‫Vì vậy, chúng tôi sẽ nói máy ảnh tạo đối tượng phụ mặc định, bạn là thành phần máy ảnh.
‫Và trong macro văn bản, tôi sẽ gọi nó đơn giản là máy ảnh.
‫Và đối với máy ảnh, tôi sẽ gọi phần đính kèm cài đặt chuyển qua cánh tay lò xo.
‫Và tất nhiên tôi cần tệp tiêu đề máy ảnh.
‫Vì vậy, đây là tài liệu động cơ không có thật và đây là tài liệu tìm kiếm,
‫tôi sẽ nhập cho bạn thành phần máy ảnh và ở đây tôi thấy bạn thành phần máy ảnh.
‫Tôi sẽ chọn nó.
‫Và đây là tài liệu về thành phần máy ảnh.
‫Vì vậy, tôi sẽ sao chép nó để bao gồm dán nó ngay tại đây ở đầu tệp của chúng tôi.
‫Và bây giờ chúng ta nên tốt.
‫Được rồi, vậy chúng ta hãy tiếp tục và biên dịch nó.
‫Được chứ.
‫Vậy là tôi đã biên dịch thành công.
‫Hãy quay lại trình chỉnh sửa và tiếp tục ở đây - Xe tăng.
‫Tất nhiên, chúng tôi không nhìn thấy bất cứ điều gì bởi vì - xe tăng có nguồn gốc từ cơ sở - và các thành phần chúng
‫tôi vừa thêm, chúng tôi đã thêm vào lớp xe tăng.
‫Vì vậy, BP-tank sẽ không nhận được những thứ đó bởi vì nó không có nguồn gốc từ lớp tank.
‫Bây giờ chúng tôi có thể tạo một bản thiết kế mới dựa trên lớp xe tăng, nhưng sau đó chúng tôi sẽ phải thiết
‫lập lại tất cả các thành phần này.
‫Và tôi không thực sự cảm thấy muốn trải qua tất cả những công việc đó lần thứ hai.
‫Có một cách dễ dàng hơn để chúng tôi có thể sửa chữa bản thiết kế này cho lớp xe tăng.
‫Chúng tôi thực hiện điều đó bằng cách đi tới cài đặt lớp học và trong bảng chi tiết đã chọn cài đặt lớp học,
‫chúng tôi thấy các tùy chọn lớp học và có lớp chính này.
‫Menu thả xuống cho thấy rằng nó được đặt để làm cơ sở, nhưng nếu chúng ta nhấp vào nó, chúng ta có thể tìm kiếm
‫xe tăng và chọn xe tăng làm lớp cơ sở.
‫Và bây giờ bản thiết kế này có nguồn gốc từ lớp xe tăng.
‫Vì vậy, chúng tôi thấy rằng tất cả các thuộc tính mà chúng tôi thiết lập với các thành phần của chúng tôi như lưới và kích thước viên
‫nang, tất cả chúng vẫn ở đó.
‫Chỉ bây giờ chúng tôi nhìn thấy một máy ảnh.
‫Trên thực tế, chúng ta có một cánh tay lò xo và một chiếc máy ảnh.
‫Và nếu chúng ta chọn nhánh lò xo bây giờ, chúng ta có thể thấy đường màu đỏ đó.
‫Vì vậy, điều này là tuyệt vời.
‫Vì vậy, tôi có thể lấy thành phần cánh tay lò xo này và thay đổi chiều dài cánh tay mục tiêu của nó.
‫Nếu tôi muốn, tôi có thể đặt nó thành 600 và thậm chí tôi có thể thay đổi cách xoay của nó để
‫nó hướng máy ảnh xuống bể bằng cách chọn chế độ xoay và xoay nó lên một chút.
‫Giống như Vì vậy, bây giờ tôi muốn chỉ ra rằng bạn không nên thay đổi vị trí của máy ảnh.
‫Có thể bạn sẽ bị hấp dẫn khi chọn máy ảnh và di chuyển nó trên khắp thế giới để bạn định vị
‫và đặt góc vừa phải.
‫Nhưng đây không phải là cách chính xác để làm điều đó.
‫Cách chính xác là đặt chiều quay và chiều dài cánh tay mục tiêu của thành phần cánh tay đòn lò xo.
‫Và lý do là bạn muốn chiếc máy ảnh đó được gắn vào phần cuối của cánh tay lò xo.
‫Cánh tay lò xo có rất nhiều tính năng tích hợp khác nhau như co lại khi máy
‫ảnh đập vào tường để tránh chướng ngại vật, cản tầm nhìn xuống ao và những thứ tương tự.
‫Vì vậy, bạn sẽ muốn máy ảnh đó được gắn vào phần cuối của tay lò xo và sau đó
‫điều chỉnh tay lò xo hơn là điều chỉnh vị trí và góc quay của máy ảnh.
‫Vì vậy, trong video này, chúng tôi đã tạo lớp bể và chúng tôi bắt nguồn từ ao cơ sở để kế thừa những phẩm chất
‫đó từ lớp ao cơ sở.
‫Chúng tôi đã thêm một thành phần cánh tay lò xo và một thành phần máy ảnh và hiển thị chúng với trình chỉnh sửa bằng cách sử dụng chỉ hiển
‫thị và đặt chúng vào danh mục riêng của chúng.
‫Vì vậy, chúng ta đang từng bước tiến gần đến thành phẩm, và chúng ta sẽ tiếp tục phát triển chiếc xe tăng này
‫trong bài giảng tiếp theo.
‫Tôi sẽ gặp bạn sớm.