标准编号:ISO/IEC TR 18015:2006

中文名称:信息技术 编程语言、其环境及系统软件界面 C++性能技术报告

英文名称:Information technology — Programming languages, their environments and system software interfaces — Technical Report on C++ Performance

发布日期:2006-09

标准范围

The aim of this Technical Report is:- to give the reader a model of time and space overheads implied by use of variousC++ language and library features,- to debunk widespread myths about performance problems,- to present techniques for use of C++ in applications where performance matters,and- to present techniques for implementing C++ Standard language and libraryfacilities to yield efficient code.As far as run-time and space performance are concerned, if you can afford to use C foran application, you can afford to use C++ in a style that uses C++’s facilitiesappropriately for that application.This Technical Report first discusses areas where performance issues matter, such asvarious forms of embedded systems programming and high-performance numericalcomputation. After that, the main body of the Technical Report considers the basic costof using language and library facilities, techniques for writing efficient code, and thespecial needs of embedded systems programming.Performance implications of object-oriented programming are presented. This discussionrests on measurements of key language facilities supporting OOP, such as classes, classmember functions, class hierarchies, virtual functions, multiple inheritance, and run-timetype information (RTTI). It is demonstrated that, with the exception of RTTI, currentC++ implementations can match hand-written low-level code for equivalent tasks.Similarly, the performance implications of generic programming using templates arediscussed. Here, however, the emphasis is on techniques for effective use. Errorhandling using exceptions is discussed based on another set of measurements. Both timeand space overheads are discussed. In addition, the predictability of performance of agiven operation is considered.The performance implications of IOStreams and Locales are examined in some detailand many generally useful techniques for time and space optimizations are discussed.The special needs of embedded systems programming are presented, includingROMability and predictability. A separate chapter presents general C and C++ interfacesto the basic hardware facilities of embedded systems.Additional research is continuing into techniques for producing efficient C++ librariesand programs. Please see the WG21 web site at www.open-std.org/jtc1/sc22/wg21 forexample code from this Technical Report and pointers to other sites with relevantinformation.

标准预览图

下载信息


立即下载标准文件

大家都在看