34 lines
7.2 KiB
HTML
34 lines
7.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
|
|
<head><meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<title>基本概念</title>
|
|
<link rel="stylesheet" href="ext.css" />
|
|
<link rel="stylesheet" href="site_modules.css" />
|
|
</head>
|
|
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-cpp_language_basic_concepts skin-cppreference2 action-view cpp-navbar">
|
|
<div id="cpp-content-base">
|
|
<div id="content"><a id="top"></a>
|
|
<h1 id="firstHeading" class="firstHeading">基本概念</h1>
|
|
<div id="bodyContent">
|
|
<div id="contentSub"><span class="subpages">< <a href="cpp.html">cpp</a>‎ | <a href="cpp-language.html">language</a></span></div>
|
|
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
|
|
<p>本节定义了描述 C++ 编程语言时所使用的一些专门的术语与概念。</p>
|
|
<p>一个 C++ 程序是一个含有<a href="cpp-language-declarations.html">声明</a>的文本文件(通常为头文件与源文件)序列。它们被<a href="cpp-language-translation_phases.html">翻译</a>成一个可执行程序,C++ 实现通过调用其<a href="cpp-language-main_function.html">主 (main) 函数</a>执行这一程序。</p>
|
|
<p>在 C++ 程序中,一些被称为<a href="cpp-keyword.html">关键词</a>的词语有着特殊的含义。其它词语可以被用作<a href="cpp-language-identifiers.html">标识符</a>。在翻译的过程中,<a href="cpp-comment.html">注释</a>会被忽略。C++ 程序也包含<a href="cpp-language-expressions.html#.E5.AD.97.E9.9D.A2.E9.87.8F">字面量</a>,其中的字符的值由<a href="cpp-language-charset.html">字符集与编码</a>指定。程序中的某些特定字符必须通过<a href="cpp-language-escape.html">转义序列</a>表示。</p>
|
|
<p>C++ 程序中的<i>实体</i>包括值、<a href="cpp-language-object.html">对象</a>、<a href="cpp-language-reference.html">引用</a><span class="t-rev-inl t-since-cxx17"><span><a href="cpp-language-structured_binding.html">、结构化绑定</a></span> <span><span class="t-mark-rev t-since-cxx17">(C++17 起)</span></span></span>、<a href="cpp-language-functions.html">函数</a>、<a href="cpp-language-enum.html">枚举项</a>、<a href="cpp-language-type.html">类型</a>、类成员、<a href="cpp-language-templates.html">模板</a>、<a href="cpp-language-template_specialization.html">模板特化</a>、<a href="cpp-language-namespace.html">命名空间</a>和<a href="cpp-language-parameter_pack.html">形参包</a>。预处理器<a href="cpp-preprocessor-replace.html">宏</a>不是 C++ 实体。</p>
|
|
<p><i><a href="cpp-language-declarations.html">声明</a></i>可以引入实体,将它们与<a href="cpp-language-identifiers.html#.E5.90.8D.E5.AD.97">名字</a>关联起来,并定义其属性。能够定义使用一个实体所需的所有属性的声明是<a href="cpp-language-definition.html">定义</a>。对任何被 <a href="cpp-language-definition.html#ODR_.E4.BD.BF.E7.94.A8">ODR 使用</a>的非内联函数或变量,程序中必须只含有其一个定义。</p>
|
|
<p>函数的定义通常包括一系列的<a href="cpp-language-statements.html">语句</a>,其中部分会包含<a href="cpp-language-expressions.html">表达式</a>。表达式指定了程序需要进行的运算。</p>
|
|
<p>程序中遇到的名字通过<a href="cpp-language-lookup.html">名字查找</a>与引入它们的声明关联起来。每个名字都只在称为其<a href="cpp-language-scope.html">作用域</a>的程序部分中有效。有些名字有<a href="cpp-language-storage_duration.html">链接</a>,这使得它们即使出现在不同的作用域或翻译单元时也代表相同的实体。</p>
|
|
<p>C++ 中的每一个对象、引用、函数和表达式都会关联一个<a href="cpp-language-type.html">类型</a>。类型可以分为<a href="cpp-language-types.html">基础类型</a>,复合类型,或<a href="cpp-language-classes.html">自定义类型</a>,以及完整或<a href="cpp-language-type.html#.E4.B8.8D.E5.AE.8C.E6.95.B4.E7.B1.BB.E5.9E.8B">不完整</a>的类型等。</p>
|
|
<p>被声明的且不是<a href="cpp-language-data_members.html">非静态数据成员</a>的对象和引用是<i>变量</i>。</p>
|
|
<h3><span class="mw-headline" id=".E5.8F.82.E9.98.85">参阅</span></h3>
|
|
<table class="t-dsc-begin"></table>
|
|
</div>
|
|
<div class="visualClear"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|