C++
  • Home
  • Học lập trình
    • All
    • Học C++
    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    hướng dẫn cài đặt visual studio code lập trình c++ chi tiết

    Cài Đặt Visual Studio Code Lập Trình C++ Chi Tiết Đơn Giản 2024

    học lập trình c++ thì làm được gì

    Học Lập Trình C++ Thì Làm Được Gì?

    Sự khác nhau giữa struct và class trong C++

    Sự Khác Nhau Giữa Struct Và Class Trong C++

    Sự khác nhau giữa tham chiếu và con trỏ c++

    Sự Khác Nhau Giữa Tham Chiếu Và Con Trỏ Trong C++

    • Học C++
  • Reviews
    Top 7 công cụ tạo website không cần code

    Top 7 Công Cụ Tạo Website Không Cần Code Miễn Phí

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn
    • PC
    • Mobile Tips
No Result
View All Result
  • Home
  • Học lập trình
    • All
    • Học C++
    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Lập trình Backend là gì? Những điều Backend Developer nên biết

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    hướng dẫn cài đặt visual studio code lập trình c++ chi tiết

    Cài Đặt Visual Studio Code Lập Trình C++ Chi Tiết Đơn Giản 2024

    học lập trình c++ thì làm được gì

    Học Lập Trình C++ Thì Làm Được Gì?

    Sự khác nhau giữa struct và class trong C++

    Sự Khác Nhau Giữa Struct Và Class Trong C++

    Sự khác nhau giữa tham chiếu và con trỏ c++

    Sự Khác Nhau Giữa Tham Chiếu Và Con Trỏ Trong C++

    • Học C++
  • Reviews
    Top 7 công cụ tạo website không cần code

    Top 7 Công Cụ Tạo Website Không Cần Code Miễn Phí

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

    Top 7 website luyện thuật toán chất lượng nhất năm 2023 cho IT

  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn
    • PC
    • Mobile Tips
No Result
View All Result
C++
No Result
View All Result
Home Học lập trình Học C++

Hàm khởi tạo trong C++

admin by admin
July 5, 2023
in Học C++
0 0
0
0
SHARES
0
VIEWS
Share on FacebookShare on Twitter

Trong C++, hàm tạo là một phương thức đặc biệt được gọi tự động tại thời điểm tạo đối tượng. Nó được sử dụng để khởi tạo các thành viên dữ liệu của đối tượng mới nói chung. Hàm tạo trong C++ có cùng tên với class hoặc structure.

Tóm lại, một thủ tục cụ thể được gọi là hàm tạo được gọi tự động khi một đối tượng được tạo trong C ++. Nói chung, nó được sử dụng để tạo ra các thành viên dữ liệu của những thứ mới. Trong C++, tên lớp hoặc cấu trúc cũng đóng vai trò là tên hàm tạo. Khi một đối tượng được hoàn thành, hàm xây dựng được gọi. Bởi vì nó tạo ra các giá trị hoặc cung cấp dữ liệu cho sự vật, nó được gọi là hàm tạo.

Nguyên mẫu Constructors trông như thế này:

  1. <tên lớp> (danh sách các tham số);

Cú pháp sau đây được sử dụng để định nghĩa hàm tạo của lớp:

  1. <class-name> (danh sách tham số) { // định nghĩa hàm tạo }

Cú pháp sau đây được sử dụng để định nghĩa hàm tạo bên ngoài lớp:

  1. <class-name>: :<class-name> (list-of-parameters){ // định nghĩa hàm tạo}

Các hàm tạo thiếu kiểu trả về vì chúng không có giá trị trả về.

Có thể có hai loại hàm xây dựng trong C ++.

  • Hàm tạo mặc định
  • Xây dựng tham số

C++ Xây dựng mặc định

Một hàm tạo không có đối số được gọi là hàm tạo mặc định. Nó được gọi tại thời điểm tạo đối tượng.

Hãy xem ví dụ đơn giản về C++ default Constructor.

  1. #include <iostream>
  2. sử dụng không gian tên std;
  3. nhân viên lớp
  4.  {
  5. Công khai:
  6. Nhân viên()
  7.         {
  8. cout<<“Default Constructor Invooked”<<endl;
  9.         }
  10. };
  11. int main(void)
  12. {
  13. Nhân viên e1; //tạo một đối tượng của Employee
  14. Nhân viên e2;
  15. trả về 0;
  16. }

Ra:

Default Constructor Invoked 
Default Constructor Invoked

C++ Parameterized Constructor

Một hàm tạo có các tham số được gọi là hàm tạo tham số. Nó được sử dụng để cung cấp các giá trị khác nhau cho các đối tượng riêng biệt.

Hãy xem ví dụ đơn giản về C++ Parameterized Constructor.

IFrame
  1. #include <iostream>
  2. sử dụng không gian tên std;
  3. lớp Nhân viên {
  4. Công khai:
  5. ID int;//data member (cũng là biến phiên bản)
  6. tên chuỗi; //data member(cũng là biến phiên bản)
  7. lương thả nổi;
  8.        Employee(int i, string n, float s)
  9.         {
  10.             id = i;
  11. tên = n;
  12. lương = s;
  13.         }
  14.        void display()
  15.         {
  16. cout<<id<<” “<<tên<<” “<<lương<<endl;
  17.         }
  18. };
  19. int main(void) {
  20. Nhân viên e1 = Nhân viên (101, “Sonoo”, 890000); //tạo một đối tượng của Employee
  21. Nhân viên e2 = Nhân viên (102, “Nakul”, 59000);
  22. e1.hiển thị();
  23. e2.hiển thị();
  24. trả về 0;
  25. }

Ra:

101  Sonoo  890000
102  Nakul  59000

Điều gì phân biệt hàm xây dựng với một chức năng thành viên điển hình?

  1. Tên của hàm tạo giống với tên của lớp
  2. Mặc định Không có đối số đầu vào cho hàm tạo. Tuy nhiên, các đối số đầu vào có sẵn cho các hàm tạo sao chép và tham số.
  3. Không có kiểu trả về cho các nhà xây dựng.
  4. Hàm tạo của một đối tượng được gọi tự động khi tạo.
  5. Nó phải được hiển thị trong khu vực mở của lớp học.
  6. Trình biên dịch C++ tạo ra một hàm tạo mặc định cho đối tượng nếu hàm tạo không được chỉ định (mong đợi bất kỳ tham số nào và có phần thân trống).

Bằng cách sử dụng một ví dụ thực tế, chúng ta hãy tìm hiểu về các loại hàm tạo khác nhau trong C ++. Hãy tưởng tượng bạn ghé thăm một cửa hàng để mua một điểm đánh dấu. Lựa chọn thay thế của bạn là gì nếu bạn muốn mua một điểm đánh dấu? Đối với lần đầu tiên, bạn yêu cầu cửa hàng cung cấp cho bạn một điểm đánh dấu, với điều kiện bạn không chỉ định tên thương hiệu hoặc màu sắc của điểm đánh dấu bạn muốn, chỉ yêu cầu một số tiền cho yêu cầu. Vì vậy, khi chúng tôi chỉ nói, “Tôi chỉ cần một điểm đánh dấu”, anh ấy sẽ đưa cho chúng tôi bất cứ điểm đánh dấu phổ biến nhất nào trên thị trường hoặc cửa hàng của anh ấy. Hàm tạo mặc định chính xác như âm thanh của nó! Cách tiếp cận thứ hai là đi vào một cửa hàng và chỉ định rằng bạn muốn một điểm đánh dấu màu đỏ của thương hiệu XYZ. Anh ấy sẽ đưa cho bạn điểm đánh dấu đó vì bạn đã đưa ra chủ đề. Do đó, các tham số đã được đặt trong trường hợp này. Và một hàm tạo tham số chính xác là những gì nó nghe giống như! Cái thứ ba yêu cầu bạn ghé thăm một cửa hàng và tuyên bố rằng bạn muốn một điểm đánh dấu trông như thế này (một điểm đánh dấu vật lý trên tay bạn). Do đó, chủ cửa hàng sẽ nhận thấy điểm đánh dấu đó. Anh ấy sẽ cung cấp cho bạn một điểm đánh dấu mới khi bạn nói đúng. Do đó, hãy tạo một bản sao của điểm đánh dấu đó. Và đó là những gì một hàm tạo bản sao làm!

Các đặc điểm của một hàm xây dựng là gì?

  1. Hàm tạo có cùng tên với lớp mà nó thuộc về.
  2. Mặc dù có thể, các hàm xây dựng thường được khai báo trong phần công khai của lớp. Tuy nhiên, đây không phải là điều bắt buộc.
  3. Bởi vì hàm tạo không trả về giá trị, chúng thiếu kiểu trả về.
  4. Khi chúng ta tạo một đối tượng lớp, hàm tạo ngay lập tức được gọi.
  5. Các nhà xây dựng quá tải là có thể.
  6. Không được phép khai báo một hàm tạo ảo.
  7. Người ta không thể kế thừa một hàm tạo.
  8. Địa chỉ hàm tạo không thể được tham chiếu đến.
  9. Khi phân bổ bộ nhớ, hàm tạo thực hiện các cuộc gọi ngầm đến các toán tử mới và xóa.

Hàm tạo bản sao là gì?

Một hàm thành viên được gọi là hàm tạo bản sao khởi tạo một mục bằng cách sử dụng một đối tượng khác từ cùng một lớp – một cuộc thảo luận chuyên sâu về Copy Constructor.

Mỗi khi chúng ta chỉ định một hoặc nhiều hàm tạo không mặc định (với các tham số) cho một lớp, chúng ta cũng cần bao gồm một hàm tạo mặc định (không có tham số), vì trình biên dịch sẽ không cung cấp một hàm trong trường hợp này. Cách tốt nhất là luôn khai báo một hàm tạo mặc định, mặc dù nó không bắt buộc.

Một tham chiếu đến một đối tượng thuộc cùng một lớp được yêu cầu bởi hàm tạo bản sao.

  1. Mẫu (Mẫu &t)
  2. {
  3. id = t.id;
  4. }

Trình hủy trong C ++ là gì?

Một hàm thành viên đặc biệt tương đương với hàm tạo là một hàm hủy. Hàm tạo tạo ra các đối tượng lớp, bị phá hủy bởi kẻ hủy diệt. Từ “destructor”, theo sau là ký hiệu dấu ngã (), giống như tên lớp. Bạn chỉ có thể xác định một trình hủy diệt tại một thời điểm. Một phương pháp phá hủy một đối tượng được tạo ra bởi một nhà xây dựng là sử dụng một chất hủy diệt. Do đó, các thiết bị phá hủy không thể bị quá tải. Những kẻ hủy diệt không lấy bất kỳ lý lẽ nào và không trả lại bất cứ điều gì. Ngay khi mục rời khỏi phạm vi, nó sẽ được gọi ngay lập tức. Bộ hủy giải phóng bộ nhớ được sử dụng bởi các đối tượng mà hàm tạo tạo ra. Destructor đảo ngược quá trình tạo ra mọi thứ bằng cách phá hủy chúng.

Ngôn ngữ được sử dụng để định nghĩa kẻ hủy diệt của lớp

  1. ~ <class-name>()
  2.           {
  3.             }

Ngôn ngữ được sử dụng để định nghĩa kẻ hủy diệt của lớp bên ngoài nó

 

  1. <class-name>: : ~ <class-name>(){}
Previous Post

Kế thừa và các loại của chúng trong C++

Next Post

Giới thiệu về C++

admin

admin

Next Post

Giới thiệu về C++

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

  • Trending
  • Comments
  • Latest
cách code hình trái tim bằng c++

Cách code hình trái tim giống với nhân vật Thủ Khoa Lý

December 7, 2023
hướng dẫn cài đặt visual studio code lập trình c++ chi tiết

Cài Đặt Visual Studio Code Lập Trình C++ Chi Tiết Đơn Giản 2024

October 3, 2023
Office 2019 full crack

Cách Crack Office 2019 Đơn Giản, Dễ Hiểu Thành Công 100%

September 19, 2023
Top 10 ứng dụng mua hàng Trung Quốc uy tín nhất hiện nay

Top 10 ứng dụng mua hàng Trung Quốc uy tín nhất hiện nay

January 18, 2025

Các lớp lưu trữ trong cpp

0

Câu lệnh if else trong cpp

0

Chức năng của switch trong cpp

0

Mảng đối tượng trong C++

0
Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

October 23, 2023
Top 7 website bán túi xách nữ chính hãng, uy tín nhất

Top 7 website bán túi xách nữ chính hãng, uy tín nhất

October 12, 2023
Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

October 7, 2023
Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

October 5, 2023

Recommended

Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

Quick Sort – Thuật toán sắp xếp đột phá trong thế kỉ XX

October 23, 2023
Top 7 website bán túi xách nữ chính hãng, uy tín nhất

Top 7 website bán túi xách nữ chính hãng, uy tín nhất

October 12, 2023
Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

Hướng dẫn Cài Đặt Và Sử Dụng AutoCAD 2024 Full Crack 

October 7, 2023
Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

Hướng Dẫn Tải Và Sử Dụng GS Auto Clicker 3.1.2 Full Crack

October 5, 2023
Hướng dẫn học C++

© 2023 Hướng dẫn học C++ - Website thuộc bản quyền của Hướng dẫn học C++.

Liên kết

  • Home
  • Học lập trình
  • Reviews
  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn

Theo dõi chúng tôi

No Result
View All Result
  • Home
  • Học lập trình
    • Học C++
  • Reviews
  • Phần mềm PC
  • App/Ứng dụng
  • Game
  • Hướng dẫn
    • PC
    • Mobile Tips

© 2023 Hướng dẫn học C++ - Website thuộc bản quyền của Hướng dẫn học C++.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In