zoukankan      html  css  js  c++  java
  • 大约 C++ 几个方面分析--overload, override, overwrite, rewrite

    overload, override, overwrite, rewrite 这几个单词常常出如今 C++ 书中,翻阅一些译版后发现并未对 override, overwrite, rewrite 严格区分,大都翻译成重写。事实上查阅英文原版会发现。不同的上下文用不同的单词描写叙述。

    下面逐个分析:

    • overload 重载

    对于这个翻译。临时没有异议。或许正是因为 overload 翻译成重载,导致把 override 直接翻译成重写。

    • override 覆盖

    非常多译版翻译成重写。本人认为这样翻译有歧义,究竟是全然又一次写还是保留原来方法再写一个新的?无法从字面了解其意思。如果翻译成覆盖或覆写,并解释 override 仅仅是对原方法的另外实现。原方法并未放弃,就不会和 overwrite 混淆。比如。如果 one.cpp 和 two.cpp 两文件在一个完整的程序中同一时候编译。其各自的程序片段例如以下:

    // one.cpp
    #include <iostream>
    int dick = 10; // external variable definition 外部变量定义
    ...

    //two.cpp
    #include <iostream>
    static int dick = 20; // override external dick 覆盖外部变量 dick
    ...

    two.cpp 中的 dick 覆盖了原来 one.cpp 中的 dick。可是原来的 dick 仍然存在,仅仅只是 dick 在 two.cpp 中被又一次定义了。

    • overwrite 擦写

    网上把 overwrite 和 override 划等号的人比比皆是。觉得都是重写的意思。事实上 overwrite 才是真正意义上的重写。若翻译成擦写,更一目了然,擦掉原来的值,在原处又一次写。

    比如:

    int x = 8;
    x = 9; // overwrite x with 9 (把 x 擦写为 9)

    这里 x 的原值 8 已经被擦写为 9。原值 8 被 9 取代。

    • rewrite 重写

    该单词常常出如今编程练习中,题目要求重写某例题或某样例。比如:“ Rewrite this code without using break or continue . ” 或 “ Rewrite the following fragment using switch : ”

    英英字典对 rewrite 的英文解释为:in order to improve it or change it. 为了提高或改变之。比較接近 rewrite 的中文就是重写或者润色。下面是重写某些原因又写了一封信,最初写仍然有效。

    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    opencvcircle圆
    关于“100g文件全是数组,取最大的100个数”解决方法汇总
    软件测试的核心价值
    写给测试新手
    软件测试职业规划
    关于软件测试职业规划的讨论
    云计算将改变传统软件测试行业
    对MVC模式的理解
    软件测试专家于涌谈行业前景与测试人员成长
    MVC模式
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4724746.html
Copyright © 2011-2022 走看看