Skip to Content
C++程序设计:原理与实践(基础篇)(原书第2版)
book

C++程序设计:原理与实践(基础篇)(原书第2版)

by 本贾尼 斯特劳斯特鲁普
August 2021
Intermediate to advanced
450 pages
9h 36m
Chinese
Pearson
Content preview from C++程序设计:原理与实践(基础篇)(原书第2版)

6.3.3 实现单词

在程序中的单词应该是什么样的?换句话说,自定义的Token类型是什么样的?Token必须能够表示运算符(如+、-)和数值(如42、3.14),即表示单词是什么类别以及保存单词的数值(如果有的话)。

在C++代码中有很多方式来表示这些类型,下面是最简单实用的一种方式:

Token是一个类型(类似于int或者char),因此可用于定义变量及值。它有两个部分(称为成员):kind和value。关键字class表示定义一个“用户自定义类型”,该类型可以有成员,也可以没有成员。第一个成员kind是一个char字符,因此可以方便地保存‘+’和‘*’表示加法和乘法。我们可以如下方式进行类型定义:

我们使用成员访问符号“object_name.member_name”访问成员,可以将t.kind读作“t’s kind”,将t2.value读作“t2’s value”。此外,可以像复制int型对象一样复制Token对象:

有了Token类型,我们可以将表达式(1.5+4)*11表示为如下7个单词: ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

C++语言导学(原书第2版)

C++语言导学(原书第2版)

本贾尼 斯特劳斯特鲁普
管理Kubernetes

管理Kubernetes

Brendan Burns, Craig Tracey
Go程序设计语言

Go程序设计语言

艾伦A. A.多诺万, 布莱恩W. 柯尼汉

Publisher Resources

ISBN: 9787111562252