Struct trong C++

Struct trong C++ là gì? Nó được sử dụng như thế nào? Mời bạn đọc cùng eLib.VN tham khảo bài viết dưới đây của eLib.

Struct trong C++

1. Struct trong C++

Trong ngôn ngữ lập trình C++, các lớp và cấu trúc (struct) là các bản thiết kế được sử dụng để tạo ra thể hiện của một lớp. Struct trong C++ được sử dụng cho các đối tượng nhẹ như Hinhtron, Color, Point v.v.

Không giống như lớp, struct trong C++ kiểu giá trị hơn là kiểu tham chiếu. Nó rất hữu ích nếu bạn có dữ liệu không có ý định sửa đổi sau khi tạo struct.

Struct trong C++ là một tập hợp các loại dữ liệu khác nhau. Nó tương tự như lớp chứa các loại dữ liệu khác nhau.

2. Cú pháp

struct  structure_name { 
    // khai báo thành viên.  
}

Trong khai báo trên, một cấu trúc được khai báo bằng cách đặt trước từ khóa struct theo sau là định danh (tên cấu trúc). Bên trong các dấu ngoặc nhọn, chúng ta có thể khai báo các biến thành viên của các loại khác nhau. Ví dụ:

struct Student { 
    char name[20];
    int id;
    int age; 
} 

Trong trường hợp trên, Student là một cấu trúc chứa ba biến name, id và age. Khi cấu trúc được khai báo, không có bộ nhớ được phân bổ. Khi biến của cấu trúc được tạo, thì bộ nhớ được cấp phát.

3. Làm thế nào để tạo thể hiện của struct

Biến cấu trúc có thể được định nghĩa là:

Student s;

Ở đây, s là một biến cấu trúc của kiểu Student. Khi biến cấu trúc được tạo, bộ nhớ sẽ được phân bổ. Cấu trúc sinh viên chứa một biến char và hai biến số nguyên. Do đó, bộ nhớ cho một biến char là 1 byte và hai int sẽ là 2 * 4 = 8. Tổng bộ nhớ chiếm bởi biến s là 9 byte.

4. Cách truy cập biến struct

Biến của struct có thể được truy cập bằng cách sử dụng thể hiện của struct theo sau bởi toán tử (.) Và sau đó là trường của struct. Ví dụ:

s.id = 10;

Ví dụ struct trong C++

Ví dụ về struct hình chữ nhật có hai chiều rộng và chiều cao:

#include <iostream>

using namespace std;

struct Rectangle {
    int width, height;
};

int main(void) {
    struct Rectangle rec;
    rec.width = 8;
    rec.height = 5;
    cout << "Dien tich hinh chu nhat la: " << (rec.width * rec.height) << endl;
    return 0;
}

Kết quả:

Dien tich hinh chu nhat la: 40

5. Ví dụ về cấu trúc C++: Sử dụng phương thức và Constructor

Ví dụ sau sử dụng Struct nơi mà khởi tạo dữ liệu và phương thức để tính diện tích hình chữ nhật.

#include <iostream>
using namespace std;
struct Rectangle {
    int width, height;
    Rectangle(int w, int h) {
        width = w;
        height = h;
    }
    void areaOfRectangle() {
        cout << "Dien tich hinh chu nhat la: " << (width * height);
    }
};

int main(void) {
    struct Rectangle rec = Rectangle(4, 10);
    rec.areaOfRectangle();
    return 0;
}

Kết quả:

Dien tich hinh chu nhat la: 40

Trên đây là bài viết của eLib.VN về Struct trong C++. Hy vọng, sau khi đọc xong bài viết, các bạn biết cách sử dụng struct trong C++, phân biệt được điểm giống nhau và khác nhau giữa struct và lớp trong C++. Chúc các bạn thành công.

Ngày:28/10/2020 Chia sẻ bởi:Denni Trần

CÓ THỂ BẠN QUAN TÂM