Skip to content

Commit 3b63d83

Browse files
committed
deploy: 39d5102
1 parent a5d7d17 commit 3b63d83

File tree

11 files changed

+42
-236
lines changed

11 files changed

+42
-236
lines changed

404.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<ul class="dropdown-menu">
4848

4949
<li>
50-
<a href="/." class="dropdown-item">小彭老师现代 C++ 大典</a>
50+
<a href="/." class="dropdown-item">前言</a>
5151
</li>
5252

5353
<li>

functional/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<ul class="dropdown-menu">
4848

4949
<li>
50-
<a href=".." class="dropdown-item">小彭老师现代 C++ 大典</a>
50+
<a href=".." class="dropdown-item">前言</a>
5151
</li>
5252

5353
<li>

functions/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<ul class="dropdown-menu">
4848

4949
<li>
50-
<a href=".." class="dropdown-item">小彭老师现代 C++ 大典</a>
50+
<a href=".." class="dropdown-item">前言</a>
5151
</li>
5252

5353
<li>

helloworld/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<ul class="dropdown-menu">
4848

4949
<li>
50-
<a href=".." class="dropdown-item">小彭老师现代 C++ 大典</a>
50+
<a href=".." class="dropdown-item">前言</a>
5151
</li>
5252

5353
<li>

index.html

+18-19
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
<link rel="shortcut icon" href="img/favicon.ico">
11-
<title>小彭老师现代 C++ 大典 - ✝️小彭大典✝️</title>
11+
<title>前言 - ✝️小彭大典✝️</title>
1212
<link href="css/bootstrap.min.css" rel="stylesheet">
1313
<link href="css/fontawesome.min.css" rel="stylesheet">
1414
<link href="css/brands.min.css" rel="stylesheet">
@@ -47,7 +47,7 @@
4747
<ul class="dropdown-menu">
4848

4949
<li>
50-
<a href="." class="dropdown-item active" aria-current="page">小彭老师现代 C++ 大典</a>
50+
<a href="." class="dropdown-item active" aria-current="page">前言</a>
5151
</li>
5252

5353
<li>
@@ -119,11 +119,10 @@
119119

120120
<li class="nav-item" data-bs-level="1"><a href="#c" class="nav-link">小彭老师现代 C++ 大典</a>
121121
<ul class="nav flex-column">
122+
<li class="nav-item" data-bs-level="2"><a href="#_1" class="nav-link">前言</a>
123+
<ul class="nav flex-column">
122124
</ul>
123125
</li>
124-
125-
<li class="nav-item" data-bs-level="1"><a href="#_1" class="nav-link">前言</a>
126-
<ul class="nav flex-column">
127126
<li class="nav-item" data-bs-level="2"><a href="#_2" class="nav-link">格式约定</a>
128127
<ul class="nav flex-column">
129128
</ul>
@@ -146,14 +145,14 @@
146145
<h1 id="c">小彭老师现代 C++ 大典</h1>
147146
<p>小彭大典是一本关于现代 C++ 编程的权威指南,它涵盖了从基础知识到高级技巧的内容,适合初学者和有经验的程序员阅读。本书由小彭老师亲自编写,通过简单易懂的语言和丰富的示例,帮助读者快速掌握 C++ 的核心概念,并学会如何运用它们来解决实际问题。</p>
148147
<blockquote>
149-
<p><img src="../img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 敢承诺:土木老哥也能看懂!</p>
148+
<p><img src="./img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 敢承诺:土木老哥也能看懂!</p>
150149
</blockquote>
151-
<h1 id="_1">前言</h1>
150+
<h2 id="_1">前言</h2>
152151
<p>推荐用手机或平板<strong>竖屏</strong>观看,可以在床或沙发上躺着。</p>
153152
<p>用电脑看的话,可以按 <code>WIN + ←</code>,把本书的浏览器窗口放在屏幕左侧,右侧是你的 IDE。一边看一边自己动手做实验。</p>
154153
<p><img alt="" src="img/slide.jpg" /></p>
155154
<blockquote>
156-
<p><img src="../img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 请坐和放宽。</p>
155+
<p><img src="./img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 请坐和放宽。</p>
157156
</blockquote>
158157
<p>可以按顺序阅读,也可以在本页面上方导航栏的“章节列表”中,选择感兴趣的章节阅读。</p>
159158
<p>本书完全开源和免费,GitHub 仓库:https://github.com/parallel101/cppguidebook</p>
@@ -163,11 +162,11 @@ <h1 id="_1">前言</h1>
163162
<p>如果你在阅读过程中遇到任何问题,可以在 <a href="https://github.com/parallel101/cppguidebook/issues">GitHub Issues</a> 中提出,小彭老师会尽力解答。</p>
164163
<h2 id="_2">格式约定</h2>
165164
<blockquote>
166-
<p><img src="../img/bulb.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的内容是温馨提示</p>
167-
<p><img src="../img/warning.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的内容是可能犯错的警告</p>
168-
<p><img src="../img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的内容是笑话或趣味寓言故事</p>
169-
<p><img src="../img/book.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色书写的是补充说明的课外阅读,看不懂也没关系</p>
170-
<p><img src="../img/question.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的是初学者可暂时不用理解的细节</p>
165+
<p><img src="./img/bulb.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的内容是温馨提示</p>
166+
<p><img src="./img/warning.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的内容是可能犯错的警告</p>
167+
<p><img src="./img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的内容是笑话或趣味寓言故事</p>
168+
<p><img src="./img/book.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色书写的是补充说明的课外阅读,看不懂也没关系</p>
169+
<p><img src="./img/question.png" height="30px" width="auto" style="margin: 0; border: none"/> 用这种颜色字体书写的是初学者可暂时不用理解的细节</p>
171170
</blockquote>
172171
<ul>
173172
<li>术语名称: 这里是术语的定义。</li>
@@ -178,23 +177,23 @@ <h2 id="_3">观前须知</h2>
178177
<p>很多同学想当然地误以为 C++98 最简单,哼哧哼哧费老大劲从 C++98 开始学,才是错误的。</p>
179178
<p>为了应付缺胳膊少腿的 C++98,人们发明了各种<strong>繁琐无谓</strong>的写法,在现代 C++ 中,早就已经被更<strong>简洁直观</strong>的写法替代了。</p>
180179
<blockquote>
181-
<p><img src="../img/book.png" height="30px" width="auto" style="margin: 0; border: none"/> 例如所谓的 safe-bool idiom,写起来又臭又长,C++11 引入一个 <code>explicit</code> 关键字直接就秒了。结果还有一批劳保教材大吹特吹 safe-bool idiom,吹得好像是个什么高大上的设计模式一样,不过是个应付 C++98 语言缺陷的蹩脚玩意。</p>
180+
<p><img src="./img/book.png" height="30px" width="auto" style="margin: 0; border: none"/> 例如所谓的 safe-bool idiom,写起来又臭又长,C++11 引入一个 <code>explicit</code> 关键字直接就秒了。结果还有一批劳保教材大吹特吹 safe-bool idiom,吹得好像是个什么高大上的设计模式一样,不过是个应付 C++98 语言缺陷的蹩脚玩意。</p>
182181
</blockquote>
183182
<p>就好比一个<strong>老外</strong>想要学习汉语,他首先肯定是从<strong>现代汉语</strong>学起!而不是上来就教他<strong>文言文</strong></p>
184183
<blockquote>
185-
<p><img src="../img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 即使这个老外的职业就是“考古”,或者他对“古代文学”感兴趣,也不可能自学文言文的同时完全跳过现代汉语。</p>
184+
<p><img src="./img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 即使这个老外的职业就是“考古”,或者他对“古代文学”感兴趣,也不可能自学文言文的同时完全跳过现代汉语。</p>
186185
</blockquote>
187186
<p>当我们学习中文时,你肯定希望先学现代汉语,再学文言文,再学甲骨文,再学 brainf*<em>*</em>k,而不是反过来。</p>
188187
<p>对于 C++ 初学者也是如此:我们首先学会简单明了的,符合现代人思维的 C++23,再逐渐回到专为伺候“古代开发环境”的 C++98。</p>
189188
<p>你的生产环境可能不允许用上 C++20 甚至 C++23 的新标准。</p>
190189
<p>别担心,小彭老师教会你 C++23 的正常写法后,会讲解如何在 C++14、C++98 中写出同样的效果。</p>
191190
<p>这样你学习的时候思路清晰,不用被繁琐的 C++98 “奇技淫巧”干扰,学起来事半功倍;但也“吃过见过”,知道古代 C++98 的应对策略。</p>
192191
<blockquote>
193-
<p><img src="../img/bulb.png" height="30px" width="auto" style="margin: 0; border: none"/> 目前企业里主流使用的是 C++14 和 C++17。例如谷歌就明确规定要求 C++17。</p>
192+
<p><img src="./img/bulb.png" height="30px" width="auto" style="margin: 0; border: none"/> 目前企业里主流使用的是 C++14 和 C++17。例如谷歌就明确规定要求 C++17。</p>
194193
</blockquote>
195194
<h2 id="_4">举个例子</h2>
196195
<blockquote>
197-
<p><img src="../img/book.png" height="30px" width="auto" style="margin: 0; border: none"/> 接下来的例子你可能看不懂,但只需要记住这个例子是向你说明:越是新的 C++ 标准,反而越容易学!</p>
196+
<p><img src="./img/book.png" height="30px" width="auto" style="margin: 0; border: none"/> 接下来的例子你可能看不懂,但只需要记住这个例子是向你说明:越是新的 C++ 标准,反而越容易学!</p>
198197
</blockquote>
199198
<p>例如,在模板元编程中,要检测一个类型 T 是否拥有 <code>foo()</code> 这一成员函数。如果存在,才会调用。</p>
200199
<p>在 C++20 中,可以使用很方便的 <code>requires</code> 语法,轻松检测一个表达式是否能合法通过编译。如果能,<code>requires</code> 语句会返回 <code>true</code>。然后用一个 <code>if constexpr</code> 进行编译期分支判断,即可实现检测到存在则调用。</p>
@@ -285,7 +284,7 @@ <h2 id="_4">举个例子</h2>
285284
</code></pre>
286285
<p>如此冗长难懂的抽象 C++98 代码,仿佛是“加密”过的代码一样,仅仅是为了实现检测是否存在成员函数 foo……</p>
287286
<blockquote>
288-
<p><img src="../img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 如果回到 C 语言,那么你甚至都不用检测了。因为伟大的 C 语言连成员函数都没有,何谈“检测成员函数是否存在”?</p>
287+
<p><img src="./img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 如果回到 C 语言,那么你甚至都不用检测了。因为伟大的 C 语言连成员函数都没有,何谈“检测成员函数是否存在”?</p>
289288
</blockquote>
290289
<p>反观 C++20 的写法,一眼就看明白代码的逻辑是什么,表达你该表达的,而不是迷失于伺候各种语言缺陷,干扰我们学习。</p>
291290
<pre><code class="language-cpp">void try_call_foo(auto &amp;t) {
@@ -298,7 +297,7 @@ <h2 id="_4">举个例子</h2>
298297
// 从现代的 C++23 学起,先知道正常的写法“理应”是什么样。工作中用不上 C++23?我会向你介绍,如果要倒退回 C++14,古代人都是用什么“奇技淫巧”实现同样的效果。
299298
// 这样你最后同样可以适应公司要求的 C++14 环境。但是从 C++23 学起,你的思维又不会被应付古代语言缺陷的“奇技淫巧”扰乱,学起来就事半功倍。</p>
300299
<blockquote>
301-
<p><img src="../img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 既然现代 C++ 这么好,为什么学校不从现代 C++ 教起,教起来还轻松?因为劳保老师保,懒得接触新知识,认为“祖宗之法不可变”,“版号稳定压倒一切”。</p>
300+
<p><img src="./img/awesomeface.png" height="30px" width="auto" style="margin: 0; border: none"/> 既然现代 C++ 这么好,为什么学校不从现代 C++ 教起,教起来还轻松?因为劳保老师保,懒得接触新知识,认为“祖宗之法不可变”,“版号稳定压倒一切”。</p>
302301
</blockquote></div>
303302
</div>
304303
</div>

platform/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<ul class="dropdown-menu">
4848

4949
<li>
50-
<a href=".." class="dropdown-item">小彭老师现代 C++ 大典</a>
50+
<a href=".." class="dropdown-item">前言</a>
5151
</li>
5252

5353
<li>

0 commit comments

Comments
 (0)