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 的中文就是重写或者润色。下面是重写某些原因又写了一封信,最初写仍然有效。

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

大约 C++ 几个方面分析--overload, override, overwrite, rewrite的更多相关文章

  1. c/c++:重载 覆盖 隐藏 overload override overwrite

    http://www.cnblogs.com/qlee/archive/2011/07/04/2097055.html 成员函数的重载.覆盖与隐藏成员函数的重载.覆盖(override)与隐藏很容易混 ...

  2. overload, override和overwrite之间的区别

    Overload.Overwrite和Override的概念比较容易混淆,而且Overwrite和Override的中文翻译五花八门,让人很Confuse,顾保持英文原意: Overload  重载 ...

  3. c++中的overload、overwrite、override

    作为初学者,本文只从语法和简单的使用角度对overload.overwrite.override进行了区分,不曾涉及原理,记录下来以供查阅. 1.verload(重载) 1.1 基本要求: c++中的 ...

  4. Overload&Override

    Overload&Override overload-–重载 方法的重载就是在一个类中,可以定义多个有相同名字,但参数不同的方法.调用时,会根据不同的参数表选择对应的方法. 规    则:两同 ...

  5. overload、overwrite、override

    1.重载 overload 函数名一样,参数不同(类型.顺序,与返回值类型无关),重载的函数一般在同一个类中 class A { public: void test() {} void test(in ...

  6. Java 中override、overload、overwrite区别,以及与多态的关系【转】

    因为早期的翻译导致了override和overwrite的解释及理解混乱,需要重新梳理这几个词及相关内容. 转自:http://blog.csdn.net/lzhang007/article/deta ...

  7. 如何理解重载与重写——Overload vs Override/Overwrite

    重载: 在同一个类中,拥有类似功能的同名方法之间的关系叫做重载. 重载的条件:1.具有相同方法名和类似功能: 2.参数的类型或者个数不同: 3.与返回值无关: 重写: 在子父类的继承关系中,子类继承父 ...

  8. overload and overwrite in C++

    1. overload : don't using it in different scope. it will hidden the one in base or global scope. 2. ...

  9. 方法的重写(override / overwrite)

    1.重写:子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作 2.应用:重写以后,当创建子类对象以后,通过子类对象调用子父类中的同名同参数的方法时,实际执行的是子类重写父类的方法. 重写的规 ...

随机推荐

  1. SpringMVC(转)

    http://www.cnblogs.com/liukemng/p/3725582.html

  2. hdu1005 Number Sequence(寻找循环节)

    主题链接: pid=1005">huangjing 题意: 就是给了一个公式,然后求出第n项是多少... 思路: 题目中n的范围实在是太大,所以肯定直接递推肯定会超时,所以想到的是暴力 ...

  3. Android定位功能

    不说废话,直接说说实现android定位有关的API吧. 这些API都在android.location包下,一共有三个接口和八个类.它们配合使用即可实现定位功能. 三个接口: GpsStatus.L ...

  4. 网站上flv,MP4等格式的视频文件播放不出来的解决办法

    在做一个网站时,发现视频文件,比如flv,MP4格式在本地可以正常的播放,但是传到了开发机器上,就不行了.播放器的文件地址是对的,就是一直没有反应. 经过长时间的实验,发现问题在与iis的设置问题.i ...

  5. Gitblit配置

    Gitblit的安装配置及访问-windows (2013-09-11 11:52:31) 转载▼   分类: android基础 Git 是现在很流行的分布式版本控制工具,github更是人人皆知. ...

  6. HDU 1394 Minimum Inversion Number (数据结构-段树)

    Minimum Inversion Number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java ...

  7. sql server从一个数据库复制一个表到另一个数据库的方法

    分两步进行: 第一步,复制表结构: 在表上面右击——>编写表脚本为:——>Create到——>新查询编辑器窗口,你也可以保存为sql文件, 将新查询编辑器窗口最上面的一句话USE [ ...

  8. 【Android进阶】Android面试题目整理与讲解(一)

    这一篇文章专门整理一下研究过的Android面试题,内容会随着学习不断的增加,如果答案有错误,希望大家可以指正 1.简述Activity的生命周期 当Activity开始启动的时候,首先调用onCre ...

  9. 【 D3.js 入门系列 --- 4 】 怎样使用scale(比例)

    本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 在上一节中使用了一个非常重要的概念 - scale (这个不知道 ...

  10. 乐在其中设计模式(C#) - 外观模式(Facade Pattern)

    原文:乐在其中设计模式(C#) - 外观模式(Facade Pattern) [索引页][源码下载] 乐在其中设计模式(C#) - 外观模式(Facade Pattern) 作者:webabcd 介绍 ...