1.3 注释简介

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.3 注释简介相关的知识,希望对你有一定的参考价值。

一、注释的简介:

  注释可以帮助人类读者理解程序。注释通常用于概述算法,确定变量的用途,或者解释晦涩难懂的代码段。编译器会忽略注释,因此注释对程序的行为或性能不会有任何影响。

  虽然编译器会忽略注释,但读者并不会。即使系统文档的其他部分已经过时,程序员也倾向于相信注释的内容是真确可信的。因此,错误的注释比完全没有注释更糟糕,因为他会误导读者。因此,当修改代码时,不要忘记同时更新注释!

 

二、注释的种类:

  C++中有两种注释:

  1) 单行注释以双斜线(//)开始,以换行结束。当前双斜线右侧的所有内容都会被编译器忽略,这种注释可以包含任何文本,包括额外的双斜线。

  2) 界定符对注释:这种注释继承来自C语言的两个界定符(/*和*/)。这种注释以/*开始,以*/结束,可以包含除*/外的任意内容,包括换行符。编译器讲落在/*和*/之间的所有内容都当作注释。

  注释界定符可以放置于任何允许放置制表符、空格符或换行符的地方。注释界定符可以跨越程序中的多行,单这并不是必须的。当注释界定符跨多行时,最好能显示指出其内部的程序行都属于多行注释的一部分。我们一般采用的风格是,注释内的每行都以一个星号开头,从而指出整个范围都是多行注释的一部分。

  程序中通常同时包含两种形式注释。注释界定符对通常用于多行解释,而双斜线注释常用于半行或单行附住。

 1 #include <iostream>
 2 /*
 3  * 简单主函数:
 4  * 读取两个数,求他们的和
 5  */
 6  int main()
 7  {
 8      // 提示用户输入两个数
 9      std::cout << "Enter two numbers:" << std::endl;
10      int v1 = 0, v2 = 0;    // 保存我们读入的输入数据的变量
11      std::cin >> v1 >> v2;   // 读取输入数据
12      std::cout << "The sum of " << v1 << " and " << v2
13                << " is " << v1 + v2 << std::endl;
14                
15      /*
16      // 提示用户输入两个数
17      std::cout << "Enter two numbers:" << std::endl;
18      int v1 = 0, v2 = 0;        // 保存我们读入的输入数据的变量
19      std::cin >> v1 >> v2;        // 读取输入数据
20      std::cout << "The sum of " << v1 << " and " << v2
21                << " is " << v1 + v2 << std::endl;
22      //*/
23     
24     return 0;
25  }

  在上面程序中,我们可以看到两种注释符的使用,或者说一般通用使用方法,其中程序的后半段是我特意加上去的,这个主要是用来程序调试时,注释掉我们暂时不需要但后面可能又要用的上的代码,所以不能删除。这里面的注释的精髓在第22行,即在注释界定符(*/)前加入单行注释符(//),这样的好处是,在我们想要进行多行注释时,只需要再我们需要多行注释前加入注释界定符(/*),形成界定符对注释,注释掉中间需要注释的内容。当我们不需要再对他们进行注释时,只需删除注释界定符(/*),而不需要去找后面的另一个注释界定符(*/),因为此时它已经被单行注释掉,这样从而节省我们不少时间及减少出错的几率。

 

三、注释界定符的注意事项:

  界定符对形成的注释是以/*开始,以*/结束的。因此,一个注释不能嵌套另一个注释之内。编译器对这类问题所给出的错误信息可能是难以理解、令人迷惑的。例如,在我们的的系统中编译下面的程序,就会产生错误:

1 /*
2  * 注释对/* */不能嵌套。
3  * "不能嵌套"几个字会被认为是源码。
4  * 像剩余程序一样处理
5  */
6  int main()
7  {
8      return 0;
9  }

 

以上是关于1.3 注释简介的主要内容,如果未能解决你的问题,请参考以下文章

vscode 用户代码片段 vue初始化模板 Snippet #新加入开头注释 自动生成文件名 开发日期时间等内容

JavaScript

JavaScript

Android 逆向类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )(代码片段

maven-source 1.3 中不支持注释请使用 -source 5 或更高版本以启用注释

python基本语法1.3