Trong Objective-C, một “structure” thường được gọi là “struct” và được sử dụng để đóng gói một nhóm các biến có các kiểu dữ liệu cơ bản lại với nhau. Tuy nhiên, nó không được sử dụng rộng rãi như lớp (class) trong lập trình hướng đối tượng Objective-C. Dưới đây là một tổng quan về cách sử dụng struct trong Objective-C:
Mục Lục
1. Khai Báo Struct:
Khai báo một struct giống như sau:
struct MyStruct {
int age;
float height;
NSString *name;
};2. Khởi Tạo và Truy Cập Đối Tượng Struct:
// Khởi tạo một đối tượng struct
struct MyStruct person;
// Gán giá trị cho các trường
person.age = 25;
person.height = 175.5;
person.name = @"John Doe";
// Truy cập giá trị
NSLog(@"Age: %d, Height: %.1f, Name: %@", person.age, person.height, person.name);3. Typedef cho Struct:
Để làm cho cú pháp đặt tên struct trở nên thuận tiện hơn, bạn có thể sử dụng typedef:
typedef struct {
int age;
float height;
NSString *name;
} MyStruct;Sau đó, bạn có thể sử dụng MyStruct như một kiểu dữ liệu:
MyStruct person;
person.age = 30;
// ...4. Tính Đóng Gói Dữ Liệu:
Structs thường được sử dụng để đóng gói các trường dữ liệu có liên quan với nhau vào một đối tượng đơn.
5. Không Hỗ Trợ Kế Thừa và Đa Hình:
Khác với lớp, struct không hỗ trợ tính kế thừa và đa hình.
6. Sử Dụng Struct Trong Lớp:
Struct có thể được sử dụng như một thành phần của một lớp:
@interface MyObject : NSObject
@property (nonatomic, assign) MyStruct myStruct;
@end7. Swift và Struct:
Trong ngôn ngữ lập trình Swift, struct được sử dụng phổ biến hơn và có nhiều tính năng mạnh mẽ hơn so với Objective-C.
struct Person {
var age: Int
var height: Float
var name: String
}
var person = Person(age: 25, height: 175.5, name: "John Doe")
Tóm lại, trong Objective-C, struct thường được sử dụng khi cần đóng gói một số biến có kiểu dữ liệu cơ bản vào một đối tượng đơn. Tuy nhiên, khi làm việc với lập trình hướng đối tượng, lớp (class) thường được ưu tiên hơn.
👋 Xin chào,
99,99% nội dung trên website này là nhờ hỏi ChatGPT, rồi mình biên tập lại để dễ hiểu và dùng lâu dài. Một vài bài tự viết, còn lại là “làm việc nhóm với AI” 😄
Mình lưu tại đây để tra cứu, học tập và chia sẻ với bạn bè. Nếu bạn tìm được gì hữu ích, cứ đọc thoải mái – miễn phí, không quảng cáo.
📱 Mình cũng có vài app cá nhân:
QuestionBank – Ôn thi vào 10 (iOS, Android)
TypingTest by QuestionBank (iOS, Android)
Cảm ơn bạn đã ghé qua!