作者wjungle (俺)
标题Re: [分享] 物件导向 in C
时间Tue Aug 29 09:23:58 2023
从2009年开始学C以来,接着接触Linux,一直有一个声音在说C语言也是可以写物件导向
的,所以後来对於只要书有提到这样的主题,我都会直接买下来。但因为工作上及学习上
有更多别的事要处理,比如工作做比较底层的螺丝钉之类的,一直没有正视这个问题。
大家都说Linux整个就是用物件导向写的,但是里面那些技巧是对应什麽样的概念,一直
有一种很像什麽又说不上来,就觉得怎麽没有人可以说的明白,可能高手都早就心领神
会了,我这平凡人还是希望有人可以指引一条明路。
我之前有看到,在下列书单有提到这个主题的:
1. 现代嵌入式系统开发专案实务
2. Making Embedded Systems
3. 系统程序员成长计划
4. 嵌入式Linux上的C语言编程实践
5. 物件导向 ANSI C 语言-如何写物件导向 C 程式
6. Clean Architecture
以上的书单,5曾经买过,但觉得不是我要的,後来售出。
里面写的最详尽的是4,然後我最近看到6突然矛塞顿开,
所以针对4与6统整了一下,写了相关的文章如下,分享一下:
https://wjungle.blogspot.com/2023/08/c.html
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.220.251.46 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1693272241.A.EF4.html
1F:→ loadingN: 用struct去封装啊 08/29 11:19
2F:→ EijiHoba: Struct可以指定Public/Private/Protect吗? 08/29 12:07
3F:→ stupid0319: 用static function 让其他.c看不见不就好了 08/29 14:58
4F:→ sarafciel: 欸斗,你的struct defination塞在.c里,那如果要按你 08/29 15:07
5F:→ sarafciel: 第二篇的方式对这个struct做继承,然後再拿里面的成员 08/29 15:07
6F:→ sarafciel: 变数来用要怎麽办呢? 08/29 15:07
7F:推 johnjohnlin: 那就不是private啊 08/29 17:05
8F:→ Dinowchang: 简单来说,语法本身没支援,实现全部靠脑补。 08/29 18:43
9F:→ Richun: 我自己用C实作模拟OO的心得是,这东西还是搞一半就好。 08/29 19:58
10F:→ Dracarys: 乾脆自己做cfront了 08/29 20:13
11F:推 mrgyt1030: 写着写着就变C++了 08/29 20:15
12F:→ tinlans: 这东西不是几十年前侯捷就秀过一波了? 08/29 20:36
13F:推 JFLung9536: 我写过不会很难 08/29 21:42
14F:→ JFLung9536: 动态建立实体元件也是做的到的 08/29 21:43
15F:嘘 manmay: zzzz... 08/29 22:29
16F:→ fishxd1096: 试着用C写个linked list操作,应该就懂了 08/29 23:06
17F:→ alex70266: 找object-oriented programming with ansi-c 的pdf,啃 08/30 17:18
18F:→ alex70266: 一下英文就是了 08/30 17:18
19F:→ alex70266: private public没有这麽直观,要参考的话可以看kernel 08/30 17:23
20F:→ alex70266: driver怎麽封装各介面私有资料 08/30 17:23
21F:推 wulouise: 放在.h的都是public,其他都是private,user只有opaque p 09/02 18:36
22F:→ wulouise: tr,但是非lib通常不会切这麽清楚 09/02 18:36
23F:→ sunneo: kernel: priv_data 09/11 12:26