Skip to content

Covariant Script 参考文档(STD201201) Rend审 #6

Description

@OmangoItai
  • 总:(建议)中文文档是否考虑标点符号的正确与完整使用?比如使用“。”“;”等的使用规范。

  • 1内建类型:(排版)是否应将初始值写在每个类介绍第一行?

    • 1.1 number
      • 第一行:(别字)0~9是否应为0~9?
    • 1.4 char
      • 第一行:(建议)举例字符时(如'A','C')分别使用大小写和符号。
    • 1.6 array
      • 第四行:(问题)自动增长部分填0,读者会产生“array是否仅用于number”、或“同一array内,不同元素可以多个类型”的疑问。
    • 1.7 list:(问题)没有访问方法的介绍。
    • 1.8 pair:(问题)没有访问方法的介绍。
    • 1.9 hash_map:
      • 第五行:(句式)句子太长,眼睛看不清。(建议)考虑重新排版本段,拆分为两段。
      • (问题)”自动建立键与0的映射“,与1.6array问题类似,0类型不明;”与扩展函数冲突则忽略“,状语从句中主语指代不明。
        +(更改)改为:可使用下标运算符(”[]“)访问表中键所对应的值,若键不存在,将自动建立键与0(number类型)组成的映射;其余情况正常返回所对应权值。也可以使用点运算符(”.“)访问表中的字符串键所对应的值,若与散列表扩展函数冲突,则该次访问行为被忽略;若键不存在将触发运行时错误;其余情况正常返回所对应权值。
      • 最后一行:(句式)(建议)补全后半句:例如,map[“hello”] 可使用 map.hello 代替。但 map.hello 不会自动新建映射,而map["hello"]会。
  • 2 语法

    • 2.1 语句
      • 第二行:(问题)本段称”一行代码称为语句“,而第三行举例为一行三句代码,有一定歧义。
    • 2.2 预处理
      • 第二行:(问题)本段称”#之后内容均视为注释“,有一定歧义理解为c++中的”/*“,(建议)写明本行内生效、或代码中始终生效。
      • 第六行:(问题)读者易产生”@begin@EnD间是否可以写‘打多个分号’的多个语句“的疑问。(建议)阐明本问题。
    • 2.5.2 在栈上新建对象/2.5.3 在堆上新建对象
      分别对比内容,(问题)读者易产生“是否gcnew与new皆返回指针”的疑问。(建议)在2.5.2中写明是否返回指针。
    • 2.6 表达式:(用词)递增、递减在++--中的取义是否应为自增自减?在此使用递增、递减,有未来与foreach等具有迭代功能的文本描述语义冲突的风险。
    • 2.6.2 一元运算符
      • -功能:(建议)取反应改为:取相反数
    • 2.6.3.1 右结合运算符
      • +功能:(句式)对称描述不全,后半句缺少主语,(建议)改为:对数值进行数学加法运算,或对字符串拼接
      • .功能:(用词)“各种对象”中,各种一词是否多余?
      • <、<=、>、>=功能:(用词)表达式返回值,而if选择分支,私以为代码语义上有别。此处“比较是否”的文本解释既可以用于<比较符的解释,也可以用于if(a<b)的解释。(建议)删去“是否”
      • &&、and、\、or:(问题)\是否是误写?若不是应加入对'\'转译的解释。(建议)c++中一种说法&与&&分别称为“位运算的与运算”和“逻辑运算的与运算”,可以考虑借鉴该说法/位与运算、逻辑与运算/
    • 2.6.3.2 左结合运算符:(问题)除=功能,以下所有功能解释存在“主语与宾语指代不全”问题。建议改为“对数值进行数学减法运算后的值赋予左边”。
      • 表下第二行:(问题)数组填零问题,同1.6array的疑问;哈希表存在类似疑问。
    • 2.6.5 结构化绑定:
      • 第二行:(句式)太长拗口,(建议)改为:结构化绑定(Structured Binding)指的是将数组中的值,按序绑定至小括号内逗号表达式列表中,如: (a, b) = {1, 2}
      • 第三行:(句式)太长拗口,(建议)改为:我们将等号左侧的小括号内逗号表达式列表称为“结构化绑定列表”。
      • 第五行:(句式)状语重复,冗长,(建议)改为:结构化绑定也可以嵌套,但要嵌套结构中对应位置的数组必须也是嵌套的,如: (a, (b, c)) = {1, {2, 3}}。
    • 2.7 作用域和名称空间
      • block和namespace:(问题)缺少对namespace变量周期的说明,读者易产生“namespace也会销毁变量”的误解,(建议)补充对namespace变量生命周期的说明。
    • 2.7.2 名称查找
      • 倒数第四行:(问题)本行描述“将会把点运算符左边的变量作为函数的第一个参数传入”,读者易产生“这种传参行为是否是强制的”的疑问,(建议)阐明强制性。
      • 倒数第一行:(问题)str.size是否为误写,实际为str.size()?

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions