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.