46万热度
·
·
·
2025/04/19 07:03:09
·
AI 摘要
前往原文
1、经常有人说面向对象只是一种思想,C 语言也能实现面向对象。但是,如何做到呢?不会是结构体里面塞指针吧?typedef struct dev { int id; // 设备唯一标识符 char name[256]; // 设备名称 char type[64]; // 设备类型 void *driver_data; // 驱动程序数据 int status; // 设备状态,0 表示离线,1 表示在线 void (*init)(struct dev *device); // 初始化设备函数 void (*shutdown)(struct dev *device); // 关闭设备函数 ssize_t (*read)(struct dev *device, void *buffer, size_t size); // 设备读取函数 ssize_t (*write)(struct dev *device, const void *buffer, size_t size); // 设备写入函数 } dev_t; 需要注意!这个结构体里面的函数指针对标的不是 C++ 的成员函数,而是回调函数!......
相关资讯
AI 摘要
1、经常有人说面向对象只是一种思想,C 语言也能实现面向对象。但是,如何做到呢?不会是结构体里面塞指针吧?typedef struct dev { int id; // 设备唯一标识符 char name[256]; // 设备名称 char type[64]; // 设备类型 void *driver_data; // 驱动程序数据 int status; // 设备状态,0 表示离线,1 表示在线 void (*init)(stru......
46万热度
·
·
·
2025年4月19日
·
AI 摘要
选项:手写 MakefileAutotoolsVS 和 Xcode 的 Project手写 NinjaMesonCMakexmakeBazelGradle
11万热度
·
·
·
2024年10月24日
·
AI 摘要
visual studio太重了,要配置一堆东西,工程目录也不清晰。如何快速在windows上搭建c语言开发环境,轻量化一点。
热度累计中
·
·
·
2024年11月11日
·
AI 摘要
https://www.reddit.com/r/rust/comments/1ha7uyi/memorysafe_png_decoders_now_vastly_outperform_c/
4.1万热度
·
·
·
2024年12月12日
·
AI 摘要
最近学Rust和Go时,总看到有人说“C语言不安全”“内存管理是灾难”。但Linux内核、Redis这些顶级项目依然在用C,甚至C语言在嵌入式、操作系统领域几乎垄断。 争议点: 1. C语言的内存管理真的落后吗? 比如手动管理内存是否反而在特定场景(如内核、高性能计算)中成了优势? 2. Rust的所有权机制,用C语言真的无法模拟? 有没有可能通过编码规范/工具链(如静态分析)接近同等级别的安全? 3. C语言标准委员会是否在“摆烂”?......
17万热度
·
·
·
2025年3月02日
·
AI 摘要
John:《黑神话:悟空》用的是什么脚本方案? 我是游戏开发小白,但是心中也有一个游戏开发的梦,想问一下各位大佬,为什么《黑神话:悟空》选择使用C#语言开发? 而且为何现阶段游戏开发脚本基本都是C#?
74万热度
·
·
·
2024年10月24日
·
相关榜单
热点推荐
换一批