摘要: 本文将带您了解一些良好的和内存相关的编码实践,以将内存错误保持在控制范围内。内存错误是 C 和 C++ 编程的祸根:它们很普遍,认识其严重性已有二十多年,但始终没有彻底解决,它们可能严重影响应用程序,并且很少有开发团队对其制定明确的管理计划。但好消息是,它们并不怎么神秘。引言C 和 C++ 程序中的内存错误非常有害:它们很常见,并且可能导致严重的后果。来自计算机应急响应小组(请参见参考资料)和供应商的许多最严重的安全公告都是由简单的内存错误造成的。自从 70 年代末期以来,C 程序员就一直讨论此类错误,但其影响在 2007 年仍然很大。更糟的是,如果按我的思路考虑,当今的许多 C 和 C++ 阅读全文
posted @ 2013-05-04 18:57 oayx 阅读(1465) 评论(0) 推荐(0) 编辑
摘要: 本文将对 Linux? 程序员可以使用的内存管理技术进行概述,虽然关注的重点是 C 语言,但同样也适用于其他语言。文中将为您提供如何管理内存的细节,然后将进一步展示如何手工管理内存,如何使用引用计数或者内存池来半手工地管理内存,以及如何使用垃圾收集自动管理内存。为什么必须管理内存内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能力与局限性至关重要。在大部分系统语言中,比如 C 和 C++,您必须进行内存管理。本文将介绍手工的、半手工的以及自动的内存管理实践的基本概念。追溯到在 A 阅读全文
posted @ 2013-05-04 18:56 oayx 阅读(678) 评论(0) 推荐(0) 编辑
摘要: Linux API 参考BSD socket 入门指引BoSD Scket 简易入门手册。curses 库介绍之一介绍UNIX 屏幕导向程序的发展利器 - curses (之一) 。curses 库介绍之二 介绍介绍UNIX 屏幕导向程序的发展利器 - curses (之二) 。多进程编程介绍在UNIX系统上的编程实践经验。Linux 系统调用介绍在Linux系统上的函数调用。Beej's 网络编程指南介绍Beej's 网络编程技术。Beej's IPC 编程指南Beej 的 Unix 进程间通讯指南进程的创建介绍进程创建的技术详解。Linux & C/C++L 阅读全文
posted @ 2013-05-04 18:55 oayx 阅读(883) 评论(0) 推荐(0) 编辑
摘要: STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list, vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。是C++标准库的一个重要组成部分,它由Stepanov and Lee等人最先开发,它是与C++几乎同时开始开发的;一开始STL选择了Ada作为实现语言,但Ada有点不争气,最后他们选择了C++,C++中已经有了模板。STL又被添加进了C++库。1996年,惠普公司又免费公开了S 阅读全文
posted @ 2013-05-04 18:54 oayx 阅读(368) 评论(0) 推荐(0) 编辑
摘要: C++11,先前被称作C++0x,即ISO/IEC 14882:2011,是目前的C++编程语言的正式标准。它取代第二版标准ISO/IEC 14882:2003(第一版ISO/IEC 14882:1998公开于1998年,第二版于2003年更新,分别通称C++98以及C++03,两者差异很小)。新的标准包含核心语言的新机能,而且扩展C++标准程序库,并入了大部分的C++ Technical Report 1程序库(数学的特殊函数除外)。最新的消息被公开在 ISO C++ 委员会网站(英文)。ISO/IEC JTC1/SC22/WG21 C++ 标准委员会计划在2010年8月之前完成对最终委员会 阅读全文
posted @ 2013-05-04 18:47 oayx 阅读(2962) 评论(0) 推荐(0) 编辑