精华内容
下载资源
问答
  • 注释
    千次阅读
    2020-06-11 11:38:02

    注释虽然写起来很痛苦, 但对保证代码可读性至关重要. 下面的规则描述了如何注释以及在哪儿注释. 当然也要记住: 注释固然很重要, 但最好的代码本身应该是自文档化. 有意义的类型名和变量名, 要远胜过要用注释解释的含糊不清的名字.

    你写的注释是给代码读者看的: 下一个需要理解你的代码的人. 慷慨些吧, 下一个人可能就是你!

    1. 注释风格

    使用 // 或 /* */, 统一就好.

    // 或 /* */ 都可以; 但 // 更 常用. 要在如何注释及注释风格上确保统一.

    2. 文件注释

    在每一个文件开头加入版权公告, 然后是文件内容描述.

    法律公告和作者信息:

    每个文件都应该包含以下项, 依次是:

    版权声明 (比如, Copyright 2008 Google Inc.)
    许可证. 为项目选择合适的许可证版本 (比如, Apache 2.0, BSD, LGPL, GPL)
    作者: 标识文件的原始作者.
    如果你对原始作者的文件做了重大修改, 将你的信息添加到作者信息里. 这样当其他人对该文件有疑问时可以知道该联系谁.

    文件内容:

    紧接着版权许可和作者信息之后, 每个文件都要用注释描述文件内容.

    通常, .h 文件要对所声明的类的功能和用法作简单说明. .cc 文件通常包含了更多的实现细节或算法技巧讨论, 如果你感觉这些实现细节或算法技巧讨论对于理解 .h 文件有帮助, 可以将该注释挪到 .h, 并在 .cc 中指出文档在 .h.

    不要简单的在 .h 和 .cc 间复制注释. 这种偏离了注释的实际意义.

    3. 类注释

    每个类的定义都要附带一份注释, 描述类的功能和用法.

    // Iterates over the contents of a GargantuanTable.  Sample usage:
    //    GargantuanTable_Iterator* iter = table->NewIterator();
    //    for (iter->Seek("foo"); !iter->done(); iter->Next()) {
    //      process(iter->key(), iter->value());
    //    }
    //    delete iter;
    class GargantuanTable_Iterator {
        ...
    };
    

    如果你觉得已经在文件顶部详细描述了该类, 想直接简单的来上一句 “完整描述见文件顶部” 也不打紧, 但务必确保有这类注释.

    如果类有任何同步前提, 文档说明之. 如果该类的实例可被多线程访问, 要特别注意文档说明多线程环境下相关的规则和常量使用.

    4. 函数注释

    函数声明处注释描述函数功能; 定义处描述函数实现.

    函数声明:

    注释位于声明之前, 对函数功能及用法进行描述. 注释使用叙述式 (“Opens the file”) 而非指令式 (“Open the file”); 注释只是为了描述函数, 而不是命令函数做什么. 通常, 注释不会描述函数如何工作. 那是函数定义部分的事情.

    函数声明处注释的内容:

    函数的输入输出.
    对类成员函数而言: 函数调用期间对象是否需要保持引用参数, 是否会释放这些参数.
    如果函数分配了空间, 需要由调用者释放.
    参数是否可以为 NULL.
    是否存在函数使用上的性能隐患.
    如果函数是可重入的, 其同步前提是什么?
    举例如下:

    // Returns an iterator for this table.  It is the client's
    // responsibility to delete the iterator when it is done with it,
    // and it must not use the iterator once the GargantuanTable object
    // on which the iterator was created has been deleted.
    //
    // The iterator is initially positioned at the beginning of the table.
    //
    // This method is equivalent to:
    //    Iterator* iter = table->NewIterator();
    //    iter->Seek("");
    //    return iter;
    // If you are going to immediately seek to another place in the
    // returned iterator, it will be faster to use NewIterator()
    // and avoid the extra seek.
    Iterator* GetIterator() const;
    

    但也要避免罗罗嗦嗦, 或做些显而易见的说明. 下面的注释就没有必要加上 “returns false otherwise”, 因为已经暗含其中了:

    // Returns true if the table cannot hold any more entries.
    bool IsTableFull();
    

    注释构造/析构函数时, 切记读代码的人知道构造/析构函数是干啥的, 所以 “destroys this object” 这样的注释是没有意义的. 注明构造函数对参数做了什么 (例如, 是否取得指针所有权) 以及析构函数清理了什么. 如果都是些无关紧要的内容, 直接省掉注释. 析构函数前没有注释是很正常的.

    函数定义:

    每个函数定义时要用注释说明函数功能和实现要点. 比如说说你用的编程技巧, 实现的大致步骤, 或解释如此实现的理由, 为什么前半部分要加锁而后半部分不需要.

    不要 从 .h 文件或其他地方的函数声明处直接复制注释. 简要重述函数功能是可以的, 但注释重点要放在如何实现上.

    5. 变量注释

    通常变量名本身足以很好说明变量用途. 某些情况下, 也需要额外的注释说明.

    类数据成员:

    每个类数据成员 (也叫实例变量或成员变量) 都应该用注释说明用途. 如果变量可以接受 NULL 或 -1 等警戒值, 须加以说明. 比如:

    private:
        // Keeps track of the total number of entries in the table.
        // Used to ensure we do not go over the limit. -1 means
        // that we don't yet know how many entries the table has.
        int num_total_entries_;
    

    全局变量:

    和数据成员一样, 所有全局变量也要注释说明含义及用途. 比如:

    // The total number of tests cases that we run through in this regression test.
    const int kNumTestCases = 6;
    
    

    6. 实现注释

    对于代码中巧妙的, 晦涩的, 有趣的, 重要的地方加以注释.

    代码前注释:

    巧妙或复杂的代码段前要加注释. 比如:

    // Divide result by two, taking into account that x
    // contains the carry from the add.
    for (int i = 0; i < result->size(); i++) {
        x = (x << 8) + (*result)[i];
        (*result)[i] = x >> 1;
        x &= 1;
    }
    

    行注释:

    比较隐晦的地方要在行尾加入注释. 在行尾空两格进行注释. 比如:

    // If we have enough memory, mmap the data portion too.
    mmap_budget = max<int64>(0, mmap_budget - index_->length());
    if (mmap_budget >= data_size_ && !MmapData(mmap_chunk_bytes, mlock))
        return;  // Error already logged.
    

    注意, 这里用了两段注释分别描述这段代码的作用, 和提示函数返回时错误已经被记入日志.

    如果你需要连续进行多行注释, 可以使之对齐获得更好的可读性:

    DoSomething();                  // Comment here so the comments line up.
    DoSomethingElseThatIsLonger();  // Comment here so there are two spaces between
                                    // the code and the comment.
    { // One space before comment when opening a new scope is allowed,
      // thus the comment lines up with the following comments and code.
      DoSomethingElse();  // Two spaces before line comments normally.
    }
    
    

    NULL, true/false, 1, 2, 3…:
    向函数传入 NULL, 布尔值或整数时, 要注释说明含义, 或使用常量让代码望文知意. 例如, 对比:

    Warning

    bool success = CalculateSomething(interesting_value,
                                      10,
                                      false,
                                      NULL);  // What are these arguments??
    

    和:

    bool success = CalculateSomething(interesting_value,
                                      10,     // Default base value.
                                      false,  // Not the first time we're calling this.
                                      NULL);  // No callback.
    

    或使用常量或描述性变量:

    const int kDefaultBaseValue = 10;
    const bool kFirstTimeCalling = false;
    Callback *null_callback = NULL;
    bool success = CalculateSomething(interesting_value,
                                      kDefaultBaseValue,
                                      kFirstTimeCalling,
                                      null_callback);
    

    不允许:

    注意 永远不要 用自然语言翻译代码作为注释. 要假设读代码的人 C++ 水平比你高, 即便他/她可能不知道你的用意:

    Warning

    // 现在, 检查 b 数组并确保 i 是否存在,
    // 下一个元素是 i+1.
    ...        // 天哪. 令人崩溃的注释.
    

    7. 标点, 拼写和语法

    注意标点, 拼写和语法; 写的好的注释比差的要易读的多.

    注释的通常写法是包含正确大小写和结尾句号的完整语句. 短一点的注释 (如代码行尾注释) 可以随意点, 依然要注意风格的一致性. 完整的语句可读性更好, 也可以说明该注释是完整的, 而不是一些不成熟的想法.

    虽然被别人指出该用分号时却用了逗号多少有些尴尬, 但清晰易读的代码还是很重要的. 正确的标点, 拼写和语法对此会有所帮助.

    8. TODO 注释

    对那些临时的, 短期的解决方案, 或已经够好但仍不完美的代码使用 TODO 注释.

    TODO 注释要使用全大写的字符串 TODO, 在随后的圆括号里写上你的大名, 邮件地址, 或其它身份标识. 冒号是可选的. 主要目的是让添加注释的人 (也是可以请求提供更多细节的人) 可根据规范的 TODO格式进行查找. 添加 TODO 注释并不意味着你要自己来修正.

    // TODO(kl@gmail.com): Use a "*" here for concatenation operator.
    // TODO(Zeke) change this to use relations.
    

    如果加 TODO 是为了在 “将来某一天做某事”, 可以附上一个非常明确的时间 “Fix by November 2005”), 或者一个明确的事项 (“Remove this code when all clients can handle XML responses.”).

    9. 弃用注释

    通过弃用注释(DEPRECATED comments)以标记某接口点(interface points)已弃用。

    您可以写上包含全大写的 DEPRECATED 的注释,以标记某接口为弃用状态。注释可以放在接口声明前,或者同一行。

    在 DEPRECATED 一词后,留下您的名字,邮箱地址以及括号补充。

    仅仅标记接口为 DEPRECATED 并不会让大家不约而同地弃用,您还得亲自主动修正调用点(callsites),或是找个帮手。

    修正好的代码应该不会再涉及弃用接口点了,着实改用新接口点。如果您不知从何下手,可以找标记弃用注释的当事人一起商量。

    更多相关内容
  • Linux2.6.24内核注释

    千次下载 热门讨论 2014-05-29 22:42:05
    所有注释都是中文,您可以与标准2.6.24内核进行比较,看看具体的注释内容。 针对2.6.24注释的时间比较短,内容不多,抱歉,请不要拍砖。更多的注释是针对linux2.6.11.12内核的,您可以通过...
  • 优秀的程序员真的不写注释吗?

    万次阅读 多人点赞 2020-05-11 07:02:23
    我在很多地方看到这样一个观点,“请停止写注释,因为只有烂的代码才需要注释。”这个观点非常巧妙,它让我想起了孟子的一句话,“杨氏为我,是无君也;墨氏兼爱,是无父也。无父无君,是禽兽也。” 动不动就骂别人...

    我在很多地方看到这样一个观点,“请停止写注释,因为只有烂的代码才需要注释。”这个观点非常巧妙,它让我想起了孟子的一句话,“杨氏为我,是无君也;墨氏兼爱,是无父也。无父无君,是禽兽也。”

    动不动就骂别人是“禽兽”,我总觉得有点不妥,这很不符合孟子的浩然之气啊。有些大牛也有孟子这样的觉悟,如果有人要他给自己的代码加上注释,就好像是对他的一种侮辱:“我的代码写得这么优雅,你难道看不懂吗?注释是多余的!”

    我必须得承认,每个程序员都应该有一颗追求“优雅”的心,力争自己的代码更易阅读和理解——不只是针对机器,还有我们程序员同行。但不是每个程序员在一开始都能写出“高标准”的代码的,就好像不是所有君王和百姓都能搞清楚孟子的治国齐家理念的。

    在我刚回洛阳的那段时间,过得非常痛苦。因为我刚接手了别人留下的一个项目,关于大宗期货交易的。后端代码是用 Java 写的,但有很多 bug 在里面,动不动就资金结算失败,甚至内存溢出,要解决这些问题,只有一个办法,就是彻底搞懂这些代码。

    否则,根本无从下手。这就好像,你和朋友开车出去自驾游,去很远很远的地方,朋友开累了,需要休息,这时候,如果你没考过驾照,那就抓瞎了,只能把车停路边,等朋友的疲劳消退了,才能继续上路。

    我就抓瞎了。凭良心说,前同事留下的代码是精彩绝伦的,如果换做是我来写,真不一定能写得出来。毕竟大宗期货交易本身还是有点难度的,需要竞价撮合,这个业务理解起来比股票还要复杂些。

    股票涨了就赚,跌了就亏。期货不同的,买涨能赚,买跌也能赚。不过业务上的复杂还是次要的,重要的是代码里的注释非常稀有,就好像詹姆斯高斯林头上的发丝一样稀有。

    况且,国内程序员的英语功底你懂的,变量、方法、类、接口、枚举的命名无法做到真正意义上的名如其意。再加上,有些方法的行数多达三四百行,从头看到尾,看得只想捶自己。

    没办法,我的解决办法就是,看懂一行就加一行注释,毕竟注释总比代码要容易理解啊。就好像,我们在调用一个不熟悉的 API 时,只要代码的文档说清楚它是干嘛的,我们就可以用,就敢用,至于实现的细节,暂时没有理解也没关系。

    差不多花了两个月的时间(非常漫长、非常煎熬)吧,我总算是把项目中核心的代码给研究清楚了。搞清楚之后,那些之前怎么改都改不掉的 bug 也就迎刃而解了。

    这也就是为什么,我倡导大家去读源码的一部分原因了,除了学习,读源码是解决 bug 的杀手锏。要读懂源码,注释是必不可少的。不信,你看看 Java 的源码,每个变量、每个方法、每个类,注释都非常详细,详细到你替源码的作者感到心累。

    在我看来,Java 源码的作者绝对是这个世界上最优秀的程序员,连他们都写注释,那些声称“请停止写注释”的号召者是不是要啪啪啪地打脸,直到打肿为止。

    不要怀疑自己,写注释并不会证明你的代码就是烂代码。我相信,你应该买过电子产品,比如说鼠标、键盘、耳机、手机等等,所有的产品包装里除了产品本身,使用说明书是必不可少的。我就问一句,“手机没有使用说明书,咱这些后浪还能不会用?”

    写注释不是我们的错,软件本来就是复杂的。尤其是我们这些英语不是主力语言的人来说,注释显得尤为重要。我可能属于记忆力不好的那一种,隔个十天半个月,再去回头看那些我自己敲的代码,有时候真有点见着陌生人的感觉:“这代码是我写的吗?怎么有点面生啊?”

    大部分人写的代码都要升级重构,对吧?不论是语言本身版本的升级,还是我们自身能力的成长。假如在升级重构的时候,没有这些注释的帮助,真有点爬泰山的感觉,累啊,亲。

    再者说,大牛也不敢保证自己的代码是没有问题的,对吧?但注释是不会骗人的,它的意义是明确的。你可能会忘记代码是干嘛的,但我敢保证,注释能够唤醒你的记忆。

    写出好的、有意义的注释其实是有难度的,就像写代码一样。在追求卓越的路上,代码和注释其实是相辅相成的。注释会让你的代码更易阅读,代码会让你的注释更富有逻辑。

    即便是你的代码已经优雅到不需要注释,那只是在你的层面上。对于你的同事,你代码后来的负责者,就不一定了。所见略同的英雄并不会很多,你以为很优雅的代码没准在别人眼里就是一坨垃圾,而你的注释很可能会帮助别人“恍然大悟”,明白代码的意义。乖乖地写注释吧,对你对别人都有好处。

    另外,我想说一句,注释就好像是代码的一个蓝图,也或者是对代码的一个总结。在你写代码之前,脑子里肯定要想清楚你要实现什么,怎么实现,把这些作为注释写下来绝对可以帮助你写出更优雅的代码。在代码写完之后,通过注释进行总结,还能对代码进行一些升华,没准还能在总结的过程中想到更好的代码方案。

    我还见到有大牛信誓旦旦地说,写注释就好像是给不会游泳的人扔一个救生圈,他永远也学不会游泳。咋眼一看,这句话说得很有道理,对吧?在大牛们看来,要让一个新人快速成长,最好的办法就是把没有注释的代码扔给他看。

    纯属扯淡,恐怕这个新人没入门就放弃了吧?我已经三十一岁了,不,我已经十八岁了,还不会游泳呢?别听那些大牛们的鬼话,我就不信,他自己没写过注释。

    总之一点,注释并不会妨碍你写出优雅简洁的代码,它只是程序固有的一部分而已

    如果觉得文章对你有点帮助,请微信搜索「 沉默王二 」第一时间阅读。本文已收录 GitHub,传送门~ ,里面更有大厂面试完整考点,欢迎 Star。

    我是沉默王二,一枚有颜值却靠才华苟且的程序员。关注即可提升学习效率,别忘了三连啊,点赞、收藏、留言,我不挑,嘻嘻

    展开全文
  • 安装该插件后,可以在VS的菜单中显示“注释”主菜单,可以给类、函数、成员添加标准的注释,与Doxygen配合使用,可以直接生成项目的注释文档。 源代码: https://github.com/langyastudio/vs-autocomment 说明文档...
  • python全部注释

    千次阅读 2020-11-29 08:22:03
    4.python代码注释最后更新于:2019-10-05 14:25:41在 python改变世界,从hello world开始 中我们已经完成了第一个python程序,代码是有了,关键是好像好不知道写的啥玩意?? 一.什么是代码注释代码注释就是给一段代码...

    o55g08d9dv.jpg广告关闭

    腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!

    zbtufpv33q.jpeg

    4.python代码注释最后更新于:2019-10-05 14:25:41在 python改变世界,从hello world开始 中我们已经完成了第一个python程序,代码是有了,关键是好像好不知道写的啥玩意?? 一.什么是代码注释代码注释就是给一段代码加上说明, 表明这段代码的作用或者实现的功能,方便别人阅读代码。 打个形象的比喻:? 问题来了...

    在 python改变世界,从hello world开始 中我们已经完成了第一个python程序,代码是有了,关键是好像好不知道写的啥玩意?? 一.什么是代码注释代码注释就是给一段代码加上说明, 表明这段代码的作用或者实现的功能,方便别人阅读代码。 打个形象的比喻:? 问题来了,那个女孩是谁? 张三?李四?王五? 加上注释再来一...

    多行注释多行注释三、中文注释 在文件头上写入:#coding=gbk或:#coding=utf-8 虽然#这个符号在python中表示注释,其实如果用pydev或者别的什么ide来编写程序的时候,如果开头不声明保存编码格式,会默认使用ascii码保存,那么代码中有中文就会有问题,即使你的中文是在注释里面...

    一个注释就是可以用来解释代码的一段人类可读的解释或者一个注解。 例如,如果你写了一个复杂的正则表达式,你可以添加一个注释,描述代码做了什么。 在你的 python 代码中添加注释,在将来你阅读你的代码时,可以节省很多的时间和努力。 比如说,你想修改一段你在几个月前或者几年前写的脚本。 很可能你不记得为什么...

    我是多行注释1 我是多行注释2 我是多行注释3print(我上面的是多行注释)内容补充:以下实例我们可以输出函数的注释:def a():这是文档字符串passprint(a.__doc__)到此这篇关于python代码如何注释的文章就介绍到这了,更多相关python是如何注释的内容请搜索zalou.cn...

    注释概述:1、使用# 这个符号往往用于单行注释。 2、多行注释使用’’’与’’’之间可以写任何内容或者使用”””与”””之间的可以写任何内容注意:一定要用英文输入法状态下的符号总结强调:1、掌握python中写注释的几种方法,单行注释法和多行注释法。 2、写程序的规范,强调一定要在关键的部分写上你的注释...

    如果参数有默认值,还要给注释,如下写。 max_len:int>0=80 ->str 是函数返回值的注释。 这些注释信息都是函数的元信息,保存在f.__annotations__字典中、 需要注意,python对注释信息和f.__annotations__的一致性,不做检查不做检查,不做强制,不做验证! 什么都不做。 函数注释示例:def f(ham: 42, eggs: int = ...

    注释是用来说明代码的,给自己或别人看,而程序运行的时候,python解释器会直接忽略掉注释,所以,有没有注释不影响程序的执行结果,但是影响到别人能不能看懂你的代码。 python的注释以#开头,后面的文字直到行尾都算注释# 这一行全部都是注释... print hello # 这也是注释注释还有一个巧妙的用途,就是一些代码我们...

    注释是每一个程序语言必备的功能,它可以帮你整理思路,也可以让他人快速读懂你的代码,还可以暂时禁用某行代码。 总而言之,没有注释的代码不是一个好的代码。 不同的编程语言使用的注释符号并不一样,在python 中我们用 ”#” 来实现注释功能。 这里我们给大家列举注释常用的几种情景,大家学习后再做一下练习题...

    password is 110119 ***print endpython代码的注释随着学习的深入,当你利用python写复杂程序的时候有上千上万行代码,有些代码你花了很久写出来,过了些天再回去看,发现竟然看不懂了,哈哈,这太正常了。 另外,你以后在工作中会发现,一个项目多是由几个甚至几十个开发人员一起做,你要调用别人写的代码,别人也要...

    1、注释 1.1、块注释“#”号后空一格,段落件用空行分开(同样需要“#”号) # 块注释# 块注释## 块注释#块注释1.2、行注释至少使用两个空格和语句分开...$ python example_google.py section breaks are created by resuming unindentedtext. section breaksare also implicitly created anytime a new ...

    nx83cum6oy.png

    多行注释 多行注释 一般用于给类文档,函数文档作注释,可以是三个单引号也可以是双引号。 单行注释 ## 单行注释如何查看本地python的documentation:出处chasingdreamly打开cmd然后输入:python -m pydoc -p 1234 ? 给大家解释一下命令含义: python -m pydoc表示打开pydoc模块,这个模块就是用来查看python文档的...

    python的注释注释的作用:用自己熟悉的语言,对某些代码进行标注说明,增强程序的可读性; 在python解释器解释代码的过程中,凡是#右边的,解释器都直接跳过这一行; 注释的分类单行注释# 这里是注释print(hello world) print(hello python) #也可以这样进行注释#后面的就是注释了,为了增强代码的可读性,#后面记得...

    集成开发环境 pycharm----工欲善其事,必先利其器 pycharm是具备一般的python ide的功能,同时呢支持调试,语法高亮,代码管理,智能提示 加快快发的速度,提高开发效率注释----what ? 字面意思就是标注解释why ? 通常的情况下,我们编写了大量的代码,这些代码我们不只是使用一次,所以如果以后要用到这些代码...

    每种计算机语言都有自己注释方式,我们知道注释的作用是说明这些代码是什么,可以一目了然看懂,也方便日后检查和修改。 注释的部分在程序运行过程中不起作用,也不会显示出来。 我们来看下注释方式:1. 单行注释 我们可以使用 # 号来注释eg:nav = 1 #该处是申明一个变量nav print(nav)#该处打印nav的结果 #print...

    1un3nt05mi.jpeg

    相比于行注释符的多样,块注释符更加是让人眼花缭乱:? 大多数写法是我从未见过的,有些甚至是难以忍受的,槽点太多! 在这份表格里,我们看不到 python,因为从严格意义上讲,python 并没有块注释符! 一般而言,我们在连续的每行内容前面加“#”号,达到块注释的效果。 块注释被看作是多个行注释。 pep-8 中是这么...

    eipgl0zbq6.jpeg

    相比于行注释符的多样,块注释符更加是让人眼花缭乱:? 大多数写法是我从未见过的,有些甚至是难以忍受的,槽点太多! 在这份表格里,我们看不到 python,因为从严格意义上讲,python 并没有块注释符! 一般而言,我们在连续的每行内容前面加“#”号,达到块注释的效果。 块注释被看作是多个行注释。 pep-8 中是这么...

    1》单行注释:# 如:#hello python2》多行注释:三个单引号(或三个双引号),如:hello pythonhello world或hello pythonhello world3》三个单引号(或三个双引号)也可以表示跨行字符串,如: >>> s= ... hello ... python ... >>> s nhellonpythonn >>> printshellopython>>>4》跨行字符串可以用来进行格式化输出...

    jlotw0rhxe.png

    python注释 用处:注释用来书写一些解释性信息,对代码的逻辑作用等作出描述 单行注释、多行注释 1 # 这是行注释,注释内容与# 之间要空一格 2 3 print(hello world!) # 这是代码后的注释,与代码之间要空两格 4 5 6 7 这是多行注释,用三个单引号引起来 8 9 10 11 这是多行注释,用三个双引号引起来12 与用户交互 ...

    注释单独占一行时,需顶格书写,放在代码后时,一般空两格书写。 # 这是单行注释,独占一行顶格书写print(单行注释独占一行)print(注释放在代码后,一般空两格书写) #注释放在程序后,空两格=====执行结果=====#单行注释独占一行# 注释放在代码后,一般空两格书写多行注释:python多行注释有多行注释和多行注释两种...

    展开全文
  • 我认为这很容易实现,但是到目前为止,我还没有在Java class editor和jsf faceted webapp XHTML file editor上找到注释/取消注释快捷方式的解决方案:快速注释/取消注释行(例如ctrl + d用于删除单行)能够选择多行并...

    我认为这很容易实现,但是到目前为止,我还没有在Java class editor和jsf faceted webapp XHTML file editor上找到注释/取消注释快捷方式的解决方案:

    快速注释/取消注释行(例如ctrl + d用于删除单行)

    能够选择多行并对其进行注释/取消注释

    例如 :

    单行Java代码,来自:

    private String name;

    进入

    //private String name;

    多行Java代码,来自:

    private String name;

    private int age;

    进入

    /*private String name;

    private int age;*/

    单行xhtml代码,来自:

    进入

    多行xhtml代码,来自:

    rows="xx"

    cols="yy"

    ...

    />

    进入

    对于单行注释,可以使用ctrl +。

    如何在Eclipse中注释一个块的可能重复项?

    Mac快捷键://对于单行注释,请切换Cmd + /以插入和删除。 / *多行* /使用Cntrl + Cmd + //进行注释,使用Cntrl + Cmd + \取消注释。 也可以与Eclipse Neon一起使用!

    取消注释此评论类型的任何快捷方式/ **您好*这是第二行*这是第三行* /

    对于单行注释,您可以使用Ctrl + /;对于多行注释,可以在Java编辑器中选择要注释的行之后,使用Ctrl + Shift + /。

    在Mac / OS X上,您可以使用? + /注释掉单行或选定的块。

    好酷!适用于Java和xhtml文件。它甚至将/ * * /用于多行Java代码

    也适用于红宝石!

    也适用于html(Ctrl + Shift + /)

    使用瑞典语键盘无法使用多行,因为/ char是使用shift + 7键入的,是否有用于更改瑞典语用户快捷方式的插件?

    @ DavidM&rtensson对我来说效果很好,只需按Ctrl + Shift + 7(按Ctrl + /键),并标记多行即可。

    如何撤消Eclipse中的注释字段?

    要取消注释,如果是单行注释,请再次按Ctrl + /,如果是多行注释,请再次按Ctrl + Shift +

    @Richie ctrl + shift + 对于多行注释不起作用

    OP要求评论都取消评论,请同时更新答案

    在我的情况下,这并不是没有注释。

    不回答问题!不显示如何取消注释!

    采用

    Ctrl + SHIFT + L,这将打开所有有关Eclipse的主要快捷方式的列表。

    对于单行Java代码注释:Ctrl + /(Forwards

    斜线)和

    单行取消注释:Ctrl + (反斜杠)

    对于多行Java代码注释:Ctrl + Shift +

    /(正斜杠)和

    多行取消注释:Ctrl + Shift +

    (反斜杠)

    对于单行xhtml代码注释/取消注释:Ctrl + Shift +

    c

    对于多行xhtml代码注释:Ctrl + Shift +

    /(正斜杠)

    对于多个注释:Ctrl + Shift +

    (反斜杠)

    对于Mac用户,它将是:?而不是Ctrl

    找到了 !在我的日食中,它的ctrl shift c以及对Java代码和xhtml文件都有效的切换注释/取消注释功能。但是对Java代码的注释使用//甚至用于多行,而不是/ * * / ..但我认为这样还可以:-)

    @bertie如果您想要的是效果,请使用#4。

    用?代替ctrl,谢谢教我教我如何钓鱼!

    这不适用于所有嵌套的注释。

    CTRL + 7

    在Java编辑器中进行注释/取消注释。

    谢谢,这适用于Java编辑器,但不适用于xhtml文件

    这适用于Android应用程序。我将其交换为Ctrl + Q。

    这是一个很棒的功能,因为它比记住两个不同的注释/取消注释命令更简单!

    与大多数其他答案相反,这将始终有效(不能嵌套多行注释)

    单行注释Ctrl + /

    单行取消注释Ctrl + /

    多行注释Ctrl + Shift + /

    多行取消注释Ctrl + Shift + (请注意反斜杠)

    一种更简单的方法是按Ctrl + Shift + C,就像在Code :: Blocks中一样

    谢谢。在键盘上,我必须按Alt Gr键才能访问/,而常用的快捷键不起作用(Ctrl + /和Ctrl + shift + /)。我需要这个捷径。

    这很棒,因为它取消了对XML的注释。当我使用Cmd- /取消注释XML / HTML时,我最终得到了嵌套的注释。

    选择要注释的代码,然后使用Ctr + /进行注释,并使用Ctrl + 取消注释。它可能不适用于所有类型的源文件,但它适用于Java代码。

    在日食中,按Ctrl + Shift + L,将列出所有快捷方式。

    这个答案实际上更有意义。除了在这里问什么问题外,还提供其他广泛的与快捷方式相关的问题的答案

    ..但它无法回答问题,因为此弹出窗口中未列出"注释"热键。

    Ctrl + Shift + C。在.java,.xhtml,.properties以及其他上都可以很好地工作,但是我只测试了这些。可以注释单行或多行。

    是的,至少也可以在.less, .css, .jsp, .xml中使用

    Java类中的注释

    切换/单行注释(Ctrl + /)-从当前行添加/删除行注释(//…)。

    添加块注释(Ctrl + Shift + /)-将选定的行换成块注释(/ *…* /)。

    删除块注释(Ctrl + Shift + /)-删除所选行周围的块注释(/ *…* /)。

    添加Javadoc注释(Alt + Shift + J)-将Javadoc注释添加到活动字段/方法/类。有关将光标放置在何处的更多详细信息,请参见以下注释。

    HTML / XML / Config文件中的注释

    添加块注释(Ctrl + Shift + /)-将所选行换成块注释()。

    删除块注释(Ctrl + Shift + )-删除所选行周围的块注释()。

    哈哈,通过绝望地尝试使用CTRL+SHIFT+\取消对XML的注释,我发现了一个新的CTRL+ALT-GR+8,它似乎在2个编辑器中复制(垂直分割)当前编辑的文件。然后您可以同时看到同一文件的头部和底部

    一种简单的方法是在代码行上按Ctrl + Shift + C。

    对于评论和取消评论,请执行相同的操作.. :)

    谢谢这让我尝试cmd吗? + shift + c(基本上是同一件事)可在Mac上切换评论

    它仅适用于注释和取消注释指令。

    Ctrl + 7注释选定的文本。

    对于Mac,它是以下组合:Cmd + /

    仅供以后参考:该键称为"命令键"。

    @katzenhut我希望程序员会知道他/她的键盘上的按键是什么。

    @ b1nary.atr0phy-好吧,当我写此评论时,回答者将有问题的密钥称为" mac-key"。那这告诉你什么?幸运的是,自从...

    当时,老板强迫我使用Mac-Book。不是我的错,我不知道按钮名称:-)

    Ctrl + /切换" //"注释,Ctrl + Shift /切换" / * * /"注释。至少对于Java而言,其他工具可能具有不同的快捷方式。

    Ctrl + 将删除其中任一注释的块,但不会添加注释。

    编辑:在PC上是Ctrl,但在Mac上,快捷方式可能全都是Cmd。我本人没有Mac,因此无法轻松检查

    单注释ctrl + /,还有多行注释,您可以选择多行,然后选择ctrl + /。然后,要删除注释,可以对单行注释和多行注释使用ctrl + c。

    您可以使用快捷方式Ctrl + /在一行或所选内容之间切换注释

    这将添加//删除代码行的//

    您可以使用Ctrl + Shift + / eclipse快捷方式阻止注释/ * * /

    您可以在http://javatutorial.net/eclipse-shortcuts中找到有用的Eclipse快捷方式的完整列表。

    对于那些喜欢自定义事物(并搞砸它们)的人,一些技巧:

    在"首选项"-"常规"-"键"中,键入"注释"以获取所有编辑器中注释键组合的完整列表。确保仅编辑,而不复制命令(因为您无法擦除创建的命令)。

    对于HTML文件,请查找范围为"编辑HTML文件"的文件。名称令人困惑,是的,但是使用每个键时,描述或多或少地显示。

    最后,我只能在此处用HTML定义块注释。它适用于HTML代码和Javascript代码(如果是HTML,则在开头和末尾添加,如果是Javascript,则添加/*和*/)。 (我记得曾经有一个"行注释"键(为每行添加注释),但现在已经不存在了。如果有人知道如何找到并告诉我,我将不胜感激。)

    e6f0dd55d168331926a635d8798bfd0e.png

    类别必须为Edit。 Source不起作用。

    编辑:

    我发现了如何配置XML Toggle注释!类别也应为Edit。然后,您可以在** XML编辑器(带有"设计"和"源"选项卡的一个)中切换注释。

    fa3f06e08aef3a6b2f3842b420e48b06.png

    展开全文
  • Java的三种注释

    万次阅读 2021-10-22 14:13:06
    Java基础是java初学者的起点,是帮助你从小白入门到精通必学基础课程! 为初学者而著! ...Java注释:单行、多行和文档注释 注释是对程序语言的说明,有助于开发者和用户之间的交流,方便理...
  • VScode自动添加注释

    千次阅读 2022-02-21 19:52:18
    目录使用koroFileHeader插件安装配置快捷键文件头部注释快捷键函数注释注释快捷键生成注释代码图片快捷键使用代码片段快速注释入口选择![在这里插入图片描述]...
  • Python中的注释

    千次阅读 2021-03-17 17:38:57
    1.2 注释的分类1.2.1 单行注释以#开头,#右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用# 我是注释,可以在里写一些功能说明之类的哦print('hello world')pycharm里面快捷键 Ctrl + /1.2.2 多行...
  • 文章目录文档目标注释规范总体原则文件注释结构体及接口注释函数及方法注释import规范注释模板配置goLand文件注释模板配置goLand方法修改注释模板配置Goanno方法、接口、结构体注释模板配置 文档目标 良好的注释对...
  • IDEA创建类注释模板和方法注释模板

    千次阅读 2022-04-04 14:51:47
    IDEA 创建类注释模板和方法注释模板 - 简书 IDEA自定义模板注释(解决了参数与返回值为空的问题) - 庄小周 - 博客园 IDEA类和方法注释模板设置(非常详细) - 十月围城小童鞋 - 博客园 IDEA类和方法...
  • python多行注释

    千次阅读 2020-11-24 13:05:13
    1》单行注释:# 如:#hello python2》多行注释:三个单引号(或三个双引号),如:hello pythonhello world或hello pythonhello world3》三个单引号(或三个双引号)也可以表示跨行字符串,如: >>> s= ......
  • 规范JavaScript注释

    千次阅读 多人点赞 2020-06-25 18:02:35
    行内注释 显示一个解释的评论 // 用来显示一个解释的评论 显示表达式的结果 // -> 用来显示表达式的结果 显示 console 的输出结果 // >用来显示 console 的输出结果 示例 function test() { // 测试...
  • 尽管用于javadoc工具的JDK工具和实用程序页面通过实现和继承方法来描述Javadoc方法注释重用的规则,但是当实际上不需要使用{@inheritDoc}时,很容易不必要地显式描述注释继承,因为会使用相同的注释隐式继承。...
  • 如何优雅地使用Python中的代码注释

    千次阅读 2020-11-22 21:34:08
    数据观世界在编写Python代码时,确保您的代码易于被其他人理解是很重要的。给变量、函数起合适的名字以及合理地组织代码都是很好的方法。...你还会学到:为什么代码注释如此重要用Python编写注释的最佳实践希望避...
  • 所有javadoc命令都只能出现于“/**”注释中。但和平常一样,注释结束于一个“*/”。主要通过两种方式来使用javADOc:嵌入的html,或使用“文档标记”。其中,“文档标记”(Doc tags)是一些以“@”开头的命令,置于...
  • 如何在Visual Studio Code中注释多行?

    万次阅读 2020-12-20 16:31:43
    我找不到在Visual Studio Code中注释和取消注释多行代码的方法。是否可以使用某些快捷方式在Visual Studio Code中注释和取消注释多行? 如果是,该怎么办?当其中一行已被注释时,如何注释多行htmlShift + Alt + A在...
  • 关于IDEA注释格式

    千次阅读 多人点赞 2022-01-20 21:43:26
    开发过程中经常看到源码中的注释,感叹大佬的注释为何写得那么清新脱俗,决定简单研究一下IDEA中的注释 本文主要分为三个部分: 注释的显示状态切换 如何在注释中添加超链接 注释状态切换: 之前看大佬们的注释都...
  • C语言注释

    千次阅读 2021-05-19 11:27:25
    C语言中的注释用于提供有关代码行的信息,它被广泛用于记录代码(或对代码功能实现的说明)。在C语言中有两种类型的注释,它们分别如下 -单行注释多行注释1.单行注释单行注释由双斜杠//表示,下面我们来看看一个单行...
  • Python注释

    千次阅读 2020-11-30 04:29:58
    注释不仅可以用来解释程序某些部分的作用和功能(用自然语言描述代码的功能),在必要时,还可以将代码临时移除,是调试程序的好帮手。当然,添加注释的最大作用还是提高程序的可读性!很多时候,笔者宁愿自己写一个...
  • IDEA设置类注释和方法注释的详细操作步骤

    千次阅读 多人点赞 2022-01-29 19:44:48
    平时写代码的时候除了要写单行注释之外,还会写类注释和方法注释,详细介绍一下如何在IDEA中设置类注释和方法注释
  • 错误,在C语言中注释部分对程序的运行结果不产生任何影响,它可以出现在程序的任何位置。在C语言中有两种注释方式:一种是以“/*”开始、以“*/”结束的块注释;一种是以“//”开始、以换行符结束的单行注释。相关...
  • 细胞类型注释

    千次阅读 2021-08-02 10:53:50
    细胞类型注释: 根据细胞的特征基因(marker基因)进行注释,一般情况是预先并不知道该特征基因对应的细胞类型,所以需要通过用细胞的特征基因对细胞类型进行注释,判断。 注释的方法: 2. 自动注释:SingleR, ...
  • python注释符号

    千次阅读 2020-11-28 14:24:46
    python中的注释有多种,有单行注释,多行注释,批量注释,中文注释也是常用的。下面是小编为您整理的关于python注释符号,希望对你有所帮助。python注释符号python中的注释有多种,有单行注释,多行注释,批量注释,中文...
  • Java注释

    千次阅读 2021-02-28 16:01:29
    单行注释://多行注释/**/文档注释:/***文档注释用于从源代码自动生成文档执行javadoc*命名根据源代码中的内容生成网页*@XXX */不同格式的注释可以嵌套。// Welcome1.java. Text-printing program...
  • Javadoc(文档注释)详解

    千次阅读 2022-01-18 15:05:50
    Java支持 3 种注释,分别是单行注释、多行注释和文档注释。文档注释以/**开头,并以*/结束,可以通过 Javadoc 生成 API 帮助文档,Java 帮助文档主要用来说明类、成员变量和方法的功能。 文档注释只放在类、接口、...
  • pycharm如何添加文件注释和函数注释

    千次阅读 2022-03-14 14:00:46
    如何自动化写出像这样shai的文件的注释呢: 如何写出这样的函数注释呢,或者说函数的描述?鼠标放上去就自动显示描述,而且在括号内ctrl+p可以显示变量提示。 本文以pycharm为例,本教程不够完整,自己写写函数...
  • python注释快捷键

    千次阅读 2020-12-08 11:24:44
    ython中的注释有多种,有单行注释,多行注释,批量注释,中文注释也是常用的。注下面是小编为您整理的关于python注释快捷键,希望对你有所帮助。Python多行代码注释快捷键选中要注释的代码,按下ctrl+/注释python 多行...
  • c语言注释规范

    千次阅读 2021-03-19 14:23:32
    1.注释原则 项目开发中,尽量保持代码注释规范和统一。 注释方便了代码的阅读和维护。 边写代码边注释,修改代码时要相应修改注释,保证注释和代码的一致性。 注释要简洁明确,不要出现形容词。 通过注释可以快速...
  • MITOS|线粒体在线注释网站

    千次阅读 2021-04-26 10:39:05
    今天给大家介绍MITOS这个线粒体在线注释网站,该网站主要用来注释动物线粒体和部分真菌,但是不推荐用来注释植物的线粒体。 小编主要从版本、使用说明、注释结果说明、注意事项、注释文件这五个方面来进行介绍。 一...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,403,984
精华内容 961,593
关键字:

注释