Các lớp học (nếu có). Truy cập specifiers luôn luôn được theo sau bởi dấu hai chấm (:). Đối với cácphần còn lại của văn bản, khi chúng tôi đề cập đến specifier truy cập công cộng, chúng tôi sẽ bỏ qua các dấu hai chấm làchúng tôi đã làm trong câu này. Phần 3,4 giới thiệu specifier truy cập, riêng. Sau đó trong cáccuốn sách chúng ta sẽ nghiên cứu specifier truy cập được bảo vệ.Mỗi chức năng trong một chương trình thực hiện một nhiệm vụ và có thể trở lại giá trị một khi nó đã hoàn tấtnhiệm vụ của nó — ví dụ, một chức năng có thể thực hiện các phép tính, sau đó trở về kết quả củatính toán đó. Khi bạn xác định một chức năng, bạn phải chỉ định một loại lại để cho biếtkiểu giá trị trả về bởi các chức năng khi nó hoàn thành nhiệm vụ. Trong dòng 12, từ khóakhoảng trống bên trái của tên chức năng displayMessage là các chức năng trả lại.Trở lại kiểu void chỉ ra rằng displayMessage sẽ không trở lại bất kỳ dữ liệu để kêu gọi của nóchức năng (trong ví dụ này, dòng 22 chính, như chúng ta sẽ thấy trong một thời điểm) khi nó hoàn tất của nónhiệm vụ. Trong hình 3.5, bạn sẽ thấy một ví dụ về một chức năng mà trở về một giá trị.Tên của các chức năng thành viên, displayMessage, sau trở về loại (dòng12). theo quy ước, tên gọi chức năng bắt đầu với một ký tự chữ thường đầu tiên và sau đó tất cảtừ trong tên bắt đầu bằng một bức thư vốn. Phong cách viết hoa này là thường được gọinhư là trường hợp lạc đà và cũng được sử dụng cho tên biến. Dấu ngoặc đơn sau khi chức năng thành viêntên chỉ ra rằng đây là một chức năng. Một bộ sản phẩm nào trong ngoặc đơn, như được hiển thị trong dòng12, chỉ ra rằng chức năng thành viên này không yêu cầu các dữ liệu bổ sung để thực hiện của nónhiệm vụ. Bạn sẽ thấy một ví dụ về một chức năng thành viên yêu cầu các dữ liệu bổ sung trongPhần 3.3. Dòng 12 thường được gọi là một tiêu đề chức năng. Mọi chức năng cơ thểđược phân cách bằng trái và bên phải ngoặc ({và}), như trong dòng 13 và 15.Cơ thể của một hàm chứa các báo cáo thực hiện các chức năng nhiệm vụ. Trong nàytrường hợp, các viên chức năng displayMessage chứa một câu (đường 14) Hiển thị cácthông điệp "Chào mừng đến với cuốn sách lớp!". Sau khi thực hiện một bản tuyên bố này, các chức năng cóhoàn thành nhiệm vụ.Kiểm tra các lớp GradeBookTiếp theo, chúng tôi muốn sử dụng lớp GradeBook trong một chương trình. Như bạn đã thấy trong chương 2, chức năngchính (đường 19-23) bắt đầu thực hiện của mỗi chương trình.Trong chương trình này, chúng tôi muốn gọi chức năng thành viên lớp GradeBook displayMessageđể hiển thị thư chào mừng. Thông thường, bạn không thể gọi một chức năng thành viên của một lớp họccho đến khi bạn tạo một đối tượng của lớp đó. (Như bạn sẽ tìm hiểu trong phần 10.6, tĩnh viênchức năng là một ngoại lệ.) Dòng 21 tạo ra một đối tượng của lớp được gọi là myGrade - GradeBookCuốn sách. Các biến loại là GradeBook — lớp chúng tôi định nghĩa trong dòng 8 – 16. Khi chúng tôikhai báo các biến số kiểu int, như chúng ta đã làm trong chương 2, trình biên dịch biết gì int — nó cómột loại cơ bản là "xây dựng thành" C++. Trong dòng 21, Tuy nhiên, trình biên dịch không không tự độngbiết loại GradeBook là-nó là một loại xác định người sử dụng. Chúng tôi báo cho trình biên dịchGradeBook là gì bằng cách bao gồm định nghĩa lớp (đường số 8-16). Nếu chúng ta bỏ qua những dòng này,trình biên dịch sẽ phát hành một thông báo lỗi. Mỗi lớp bạn tạo ra sẽ trở thành một loại đócó thể được sử dụng để tạo ra các đối tượng. Bạn có thể xác định các lớp mới khi cần thiết; đây là một trong những lý dotại sao C++ được biết đến như là một ngôn ngữ mở rộng.Đường dây 22 gọi displayMessage chức năng thành viên sử dụng biến myGradeBook tiếpbởi người điều khiển dấu chấm (.), chức năng tên displayMessage và một bộ trống rỗngdấu ngoặc đơn. Cuộc gọi này gây ra chức displayMessage để thực hiện nhiệm vụ của mình. Tại cácsự khởi đầu của đường 22, "myGradeBook." chỉ ra rằng chính nên sử dụng các đối tượng GradeBookmà được tạo ra trong dòng 21. Ngoặc trống ở dòng 12 chỉ ra rằng func thành viên
đang được dịch, vui lòng đợi..