C++ Primer摘抄(一)

      20世纪70年代,程序设计的焦点从过程化的程序设计方法转移到了抽象数据类型(ADT)的程序设计方法中,现在称之为Object based。在基于对象的程序设计中,我们通过一组数据抽象来建立问题的模型,在C++中我们把这些抽象称之为类,与每个类相关的算法称之为该类的公有接口。数据以私有的形式存储在对象中,对数据的访问应与一般的程序设计代码隔离开来。

      面向对象的程序设计方法通过“继承inheritance机制和动态绑定dynamic binding机制“扩展了抽象数据类型。继承机制是对现有实现代码的重用,动态绑定时对现有公有接口的重用。

      预处理指示符(Preprocessor directive) (1.3节)

  • #ifndef 条件指示符,例:防止头文件嵌套包含,如果FILE_H常量没有被定义,则程序会初始化一个默认值,执行预编译里面的内容;
# ifndef FILE_H
# define FILE_H
/*file.h*/
#endif

  • #ifdef,用来判断一个预处理器常量是否已经被定义,以便有条件的包含程序代码。如果DEBUG被定义了,则执行代码,否则不执行。DEBUG这个预处理器常量VS下可以直接用,其他编译方法:$CC –D DEBUG main.c,也可以使用#define指示符定义预处理器常量。
#ifdef DEBUG
/*CODE here*/
#endif

      编译C++程序时,编译器自动定义了一个预处理器名字__cplusplus,可以根据他来判断该程序是不是C++程序,以便有条件编译一些代码。另外两个比较有用的预定义名字是:__LINE__和__FILE__。前者记录文件已经被编译的行数,后则包含正在被编译的文件的名字。另外__TIME__和__DATA__表示当前时间和日期。

  • assert() C语言标准库提供的一个通用预处理器宏。可以在代码中判断一个必要的前提条件,以便程序能够正确执行。
#include<iostream>
//#include<cassert.h>

#include<assert.h>
using namespace std;
int main()
{
    /*=======*/
    assert(filename != 0);
}

 

英文术语:

Programming paradigm 程序设计方法

Procedures programming 过程化程序设计

Abstract data type, ADT 抽象数据类型

Object bases 基于对象

Public interface 公有接口

Inheritance 继承

Dynamic binding 动态绑定

Vector 向量

Divide and conquer 分而治之

Stepwise refinement 逐步求精

Algorithm 算法

Assignment 赋值

Function prototype 函数原型

Invoke 调用

Preprocessor directive 预处理指示符(#include)

Code generation 代码生成

Iterate 迭代

Loop 循环

 

(Page1-Page13,C++ Primer 第三版)

原文链接: https://www.cnblogs.com/chenliang0571/archive/2010/03/08/1681065.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C++ Primer摘抄(一)

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/8610

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月6日 下午7:48
下一篇 2023年2月6日 下午7:50

相关推荐