thể Duplicates:
Can you write object oriented code in C?
Object Oriented pattern in C ?Object định hướng trong C
Tôi nhớ đọc một thời gian trước đây về một người nào đó (Tôi nghĩ đó là Linus Torvalds) nói về cách C++ là một ngôn ngữ khủng khiếp và cách bạn có thể viết các chương trình hướng đối tượng với C. Khi có thời gian để phản ánh, tôi không thực sự thấy cách tất cả các khái niệm hướng đối tượng chuyển sang C. Một số điều khá rõ ràng. Ví dụ:
- Để mô phỏng chức năng của thành viên, bạn có thể đặt con trỏ hàm trong cấu trúc.
- Để thi đua đa hình, bạn có thể viết một hàm mang theo một số biến của tham số và làm một số voodoo tùy thuộc vào, nói rằng, các
sizeof
tham số (s)
Làm thế nào bạn sẽ bắt chước đóng gói, thừa kế mặc dù?
Tôi cho rằng đóng gói có thể được mô phỏng bằng cách có cấu trúc lồng nhau lưu trữ thành viên riêng tư. Nó sẽ là khá dễ dàng để có được xung quanh, nhưng có lẽ có thể được đặt tên PRIVATE
hoặc một cái gì đó bằng nhau rõ ràng để báo hiệu rằng nó không có nghĩa là để được sử dụng từ bên ngoài cấu trúc. Thế còn thừa kế thì sao?
nó là khá khó chịu IMO. Đó là lý do tại sao chúng tôi có các ngôn ngữ cấp cao hơn. – ChaosPandion
Dupes: http://stackoverflow.com/questions/351733?tab=votes#tab-top, http://stackoverflow.com/questions/1201521/object-oriented-pattern-in-c –
Sử dụng sai mục đích ngăn xếp luồng xây dựng hồ sơ trực tuyến. Tại sao địa ngục bất cứ ai muốn làm điều này? –