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版)

8.2 声明和定义

声明(declaration)语句将名字引入作用域(8.4节),其作用是:

·为命名实体(如变量、函数)指定一个类型。

·(可选)进行初始化(如为变量指定一个初始值,或为函数指定函数体)。

下面即为声明语句的例子:

C++程序中的名字都必须先声明后使用。考虑下面代码:

编译器最少会给出三个“未声明的标识符”的错误,因为在此程序片段中任何地方都没有cout、f和i的声明。我们可以通过包含头文件std_lib_facilities.h得到cout的声明:

现在,只剩两个“未定义”错误了。当你编写实用程序时,你会发现大多数声明都是在头文件中给出的。一般地,对于在“其他地方”定义的有用的功能,可以在头文件中为其定义接口。大致来说,一个声明定义了一些功能的使用方式,也就是,定义了函数、变量或类的接口。请注意声明的这种用途有一个明显的但易被忽视的优点:我们不必了解cout及其<<操作符的定义的细节,我们只需用#include包含它们的声明即可。我们甚至无须真正了解它们的声明,从教材、手册、代码实例或其他资料中了解cout应如何使用就够了。编译器会读取头文件中声明,以便“理解”我们的程序。 ...

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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

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

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

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

管理Kubernetes

Brendan Burns, Craig Tracey
Python编程入门与实战

Python编程入门与实战

Posts & Telecom Press, Fabrizio Romano

Publisher Resources

ISBN: 9787111562252