Vào 20:57:30 UTC+7 Thứ ba, ngày 13 tháng mười một năm 2012, Ha Cong Hau đã viết:
> Đây là hàm dùng trong bài tập lớn mà mình không biết nó là gì rất cần sự giúp đở của các bạn và thầy Bạch Ngọc Dương
>>>>ĐỊnh nghĩa như sau :
Bộ nhớ không được cấp phát khi bạn định nghĩa struct
– Chỉ là “chỗ đặt trước” để biết struct của ta sẽ như thế nào?
Định nghĩa:
struct CDAccountV1 // tên của “kiểu” mới
định nghĩa bằng struct
{
double balance; // tên thành viên
double interestRate;
int term;
}
*• Khi đã định nghĩa struct, bạn có thể khai báo các biến
thuộc kiểu mới này:
CDAccountV1 account;
– Giống như khai báo các kiểu đơn
– Biến account có kiểu CDAccountV1
– Nó chứa các giá trị thành viên
*Lỗi khi dùng struct
Dấu chấm phẩy sau định nghĩa struct
– PHẢI có ; :
struct WeatherData
{
double temperature;
double windVelocity;
}; ( dấu chấm phẩy là BẮT BUỘC)!
– Bắt buộc vì bạn “có thể” khai báo biến struct ở vị trí
này
*Phép gán cho biến struct
Cho trước struct có tên là CropYield
• Khai báo 2 biến struct:
CropYield apples, oranges;
– Cả 2 đều là biến có kiểu CropYield định nghĩa bởi struct
– Phép gán đơn giản sau đây là hợp lệ:
apples = oranges;
• Thực hiện sao chép từng biến thành viên từ oranges vào apples
*struct làm đối số của hàm
• Được truyền vào như các kiểu đơn
– Truyền giá trị
– Truyền tham chiếu
– Hay phối hợp
• Biến struct cũng có thể là giá trị trả về của hàm
– Kiểu trả về là kiểu struct
– Cậu lệnh return trong định nghĩa hàm sẽ gửi biến
struct về nơi gọi hàm
*Khởi tạo struct
Có thể khởi tạo lúc khai báo
– Ví dụ:
struct Date
{
int month;
int day;
int year;
};
Date dueDate = {12, 31, 2003};
– Lệnh khai báo này cung cấp dữ liệu ban đầu cho cả 3 biến thành
viên
***Khai báo và khởi tạo cấu trúc
Kiểu cấu trúc
struct <tên kiểu>
{
các thành phần;
} [<danh sách biến>];
z Mỗi thành phần (một trường) là một khai báo biến
z Phần <danh sách biến> có thể có hoặc không
Khai báo biến cấu trúc:
<tên cấu trúc> <danh sách biến>;
Ví dụ:
struct vector {
double x, y, z;
};
vector v3, *v4; // Khai báo vector trong C++
>>>>>ví dụ cụ thể như sau: chương trình khai báo tên tuổi?
#include<iostream.h>
struct person{
private:
char name[20];
int age;
public:
void nhap(){
cout<<"nhap ho va ten:";
cin.getline(name,20);
cout<<"nhap tuoi";
cin>>age;
}
void show(){
cout<<name<<" tuoi "<<age;
}
};
int main(){
person a;
a.nhap();
a.show();
return 0;
}
ĐÓ là những gì mà mình nghiên cứu được về trucst? còn thiếu xót gì thì có thể hỏi thầy Dương ? muốn biết chi tiết hơn thì bạn tải tập tin này về nha :