背景:我在阅读文档的时候总会有一些疑惑,
关于这些是什么,这他妈怎么用800个生词解释一个生词,这都是什么狗屁东西等等
这个变量为什么没提到过,又尼玛有个新造的词组什么意思阿 等等
关于这些问题,他们直接或间接地导致我超级不愿意阅读英文文档,每次出现问题都习惯性地找谷歌,或者直接摆烂。不时说直接谷歌不好,而是对于一些需要经常用的东西,需要系统学一下,要自己有概念有框架的东西,直接谷歌效率极其低下而且可能获得的指导很片面(甚至直接就是错的),这是在埋地雷,对我自己来说是一种很不负责任的行为
同时本文也涉及到一些基本的符号表达,含义表述,一些单词我的理解,以及**如何理解一些文档中新出现的单词的策略**
==》我试图记录一下子阅读文档面临的问题,和我目前尝试解决的方法,方便自己查阅反思,如果也能帮到你,这也很让我开心啦hh
命令 <必选参数1|必选参数2> [-option {必选参数1|必选参数2|必选参数3}] [可选参数...] {(默认参数)|参数|参数}
(一)基本符号:
- 尖括号< >:必选参数,实际使用时应将其替换为所需要的参数
- 大括号{ }:必选参数,内部使用,包含此处允许使用的参数
- 方括号[ ]:可选参数,在命令中根据需要加以取舍
- 小括号( ):指明参数的默认值,只用于{ }中
- 竖线|:用于分隔多个互斥参数,含义为“或”,使用时只能选择一个。
- 省略号...:任意多个参数
(二)多个可选参数:
`[, a, b, c]` 含义是: a,b,c 三者是看作一组的可选参数,即,要么一起出现,要么一起省略
`[, a [, b] [, c] ]` 含义是: b,c 是平行于a的可选参数,即,可以 只传入 a, 可以只传入 b,可以只传入 c ,也可以 a,b ; a,c ; b,c ; a,b,c ;
(三)函数中的关键字:
例如:
cmake_minimum_required(VERSION [...] [FATAL_ERROR])
cmake_minimum_required() 是函数名字,
而其中的参数:`VERSION` 是一个需要写到参数中的内容
`
因此,我们可以总结一下:对于只是作为变量名,在使用时会被具体内容所替换掉的变量,会写在 <> 或者 [ ] 符号中;反之,作为使用中充当字符串存在在函数参数中的内容,则不会被 <> 或者 [ ] 符号所包含,
所以,一个普通的写法例子是:`make_minimum_required(VERSION 3.10)`
我之前会把他理解为关键字,但是还不太准确,这是一类定义好含义的,在CMAKE 执行阶段会被赋初值(如果我们在CMakeLinks.txt文件中有指定,那么,按我们的set()来,没有指定就有一个默认的初始值),因此,被称作是 settable variable
这就体现了读文档的好处:在第一次见到这种语法时(可能其他的脚本语言(我猜测大概率也会有这种语法结构),但对于第一次遇到这种语言结构的人来说:在第一次出现这种语法结构时,它会给你来一段定义,如下图蓝色部分)
实话说,我第一次读到这的时候对于这段定义的理解也不咋深入,什么狗皮东西没见过。后来这种settable variable 来指定或显示具体涵义的用法越来越多的时候,在重新回头找定义就读懂了
==》因此,我目前的策略是,遇到这种没见过的用法,在第一次出现的时候,一般tutorial 中都会给出解释,标亮或者记录一下,方便以后回头来进一步理解(因为妄图一次就理解清楚基本是不可能的,暂时先别想了)
这引申出另一个问题,我后续在不断的做tutorial时候会发现这些变量用的频率很高,但是“我不知道有哪些 settable variable”可用,我应该去哪里查找呢?
一般来说,这种词不会太多,然后一般文档也会有个总结
对于CMAKE ,我找到关于这些 settable variable 的总结 的查找方法是:
发现文档中 “CMAKE_CXX_STANDARD” 可以点击跳转,于是点击进入该变量的介绍文档,然后一版文档会显示 该变量的介绍文档的路径,如下图所示,然后我们点进去就好啦:
详细列出了很多变量,最上面还有这些settable variable 的分类,很贴心,而且一般文档都是很贴心的!
当我看不懂一个东西的时候,我应该继续,还是应该速速看别人的博客来回理解呢?
我打算采取的策略是,看别人的博客吧
还有一个疑问是:一些关键字的含义都他妈的是看明白的阿,以及,别说是看明白了,我他嘛有时候都不知道这些关键字的存在,不是我靠,这些关键字都从哪里列出来的阿????