构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工具模型
2009-12-19 00:00:00 来源:WEB开发网在 CDT 这个问题上,我想我是被我的老板骗了,他说其中只不过是包含了 太多的功能。结果是,他只想要其中的源码编辑器功能 —— 语法着色功能、自动解析功能,特别是代码完成功能。他问我是否能够定制这个编辑器并将其添加到我们的富客户平台(RCP)应用程序中。“没问题”,我回答。“这是 Eclipse!又能有多难呢?”
结果却是非常难。目前,CDT V3.1 由 20 个插件组成,这些插件包含了超过 100 个包以及数千个接口和类。要找出究竟用哪种方法需要长久的努力。但最终我用一个工作编辑器让我的老板满意,我很高兴和大家分享我学到的东西。
什么是 CDT?
CDT 无疑是可获得的最好的开放源码 C/C++ IDE。它除了具有完整的编辑、调试、索引功能之外,还为控制构建过程提供了难以置信的灵活性。如果您不想编写自己的 makefile,它会为您创建一个,并在整个项目过程中对其进行更新。您可以在 CDT 中访问 GNU Compiler Collection(GCC)及其他 GNU C/C++ 应用程序,但您也可以集成任何其他的开放源码或商业工具。
QNX Inc. 公司在 2002 年推出了 CDT,并成为主要的开发者和维护者。许多代码都是基于 Eclipse Java 开发工具(JDT)建立的,但 QNX(特别是 Doug Schaefer)添加了许多功能,包括了高级 C/C++ 解析、标准/托管的 make 项目,以及可配置的构建过程。如果您需要更多的信息,只需查看 Eclipse CDT 页面,或者参考 Doug Schaefer 的写得非常好的博客。
精简版 CDT
本系列文章的目标是使您能够理解 CDT 编辑,从而构建可定制的 C/C++ 工具。为简化这一过程,我创建了一个完整 CDT 的精简版,我把它称作 Bare Bones CDT(BBCDT)(参见 下载 获得它的代码 )。我移除了绝大多数的 CDT 类,但保留了相同的命名约定 —— 部分原因是为了简化将 CDT 代码添加到 BBCDT 中的过程,另一部分是由于我很懒。
- ››基于IP地址的vsftp服务器
- ››构建Windows 8风格应用23-App Bar概述及使用规范
- ››基于MySQL 水平分区的优化示例
- ››基于CentOS5的Linux下pptp和openvpn的搭建及配置
- ››构建域名服务器(DNS)
- ››基于JavaScript的网页版塔防游戏
- ››基于Android平台 QQ大战360手机游戏爆红
- ››构建Android平台Google Map应用
- ››基于Windows Azure的云计算应用设计
- ››构建WinForm 通用速选(全选、反选、清空)组件
- ››基于AES算法实现对数据的加密
- ››基于SoPC目标板Flash编程设计的创建及应用