数学中,vector(向量)表示一个量,由大小和方向构成。比如坐标中的一个带箭头的线段 -- 它1厘米长,正弦值六分之一π(30度角)。

计算机的c++、java中,vector表示一种一维的数组。比如,一个命名为"fibonacci"的vector,它用来存储斐波那契数列,会是这样的:

fibonacci[0] = 0, fibonacci[1] = 1, fibonacci[2] = 1, fibonacci[3] = 2, fibonacci[4] = 3, fibonacci[5] = 5

那vector是不是array的马甲呢。vector类似array,但不是array。vectors拥有自己的内存管理机制,array却在编程语言写死了,比如一个stack。vectors都拥有一个额外的动态结构,比如一个heap。array是固定大小的,vector在插入数据的时候可以变大,在删除数据的时候可以变小,这都是自动的。

在密码学中,vector表示提供给加密算法的种子,为什么叫vector而不叫种子的原因。我想可能是vector这个词够屌,如果也叫它种子的话,那么密码学的存在感在哪里呢。是的,当你听到vector这个词的时候,那是一种带有方向的量,如梦似幻,仿佛看到一个美女翱翔在天际。

计算机的机器中,vector表示一个内存区域,在这个区域中,存放着所有中断处理例程构成的表格。在操作系统中,它被称作中断向量表。注意:矛盾在这里产生了,因为vector的意思在这里不是向量,它是一个多义词,它的意思就是vector,你可以理解成内存,但是不要理解成向量。

由此看来,vector显然是一个多义词。并且在计算机学科中,不能把它联想成向量。或许计算机设计人员实在想不到更好的词来描述它,最后还是选了它,不过我真的不喜欢这个词。

为什么会混乱呢?

深层的原因,是人类的虚伪、自私和狡诈造成的,试想我发明了一个学科,我怎么可能还使用那些以前“陈旧”的,“注定被历史淘汰”的词语来表达我的学说呢。周末我去拍婚纱照,销售人员似乎发明了一门复杂的学科,名词有:多低精选(就是从底片中选几张),入册,内景,外景,妆面,摄影基地,底片翻倍,总监级摄影师。规则更是数不胜数,底片多一张加80,相片多一张加200。其他一些风花雪月的套餐更是不得了,首尔风情,巴黎之恋。。。影楼的销售冠军年销售额突破8000万,成了成功人士。他的理念就是不停的创新。他说的创新是摄影的创新吗,不是。是规则的创新,是穿我家额外的高跟鞋要加多少钱,用我家更好的化妆水要加多少钱 -- 类似的创新。

表层的原因,是语言的隔阂。难道不知道英语一次多义吗。教科书中都把它翻译成向量,真是误人。

vector的含义的更多相关文章

  1. vector定义初始化

    头文件 #include<vector> using std::vector; vector<T> v1; vector<T> v2(v1); vector< ...

  2. 把《c++ primer》读薄(3-2 标准库vector容器+迭代器初探)

    督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. 标准库vector类型初探,同一种类型的对象的集合(类似数组),是一个类模版而不是数据类型,学名容器,负责管理 和 存储的元素 ...

  3. C++箴言:理解typename的两个含义

    C++箴言:理解typename的两个含义 问题:在下面的 template declarations(模板声明)中 class 和 typename 有什么不同? template<class ...

  4. C++中vector的用法

    C++内置的数组支持容器的机制,但是它不支持容器抽象的语义.要解决此问题我们自己实现这样的类.在标准C++中,用容器向量(vector)实现.容器向量也是一个类模板.标准库vector类型使用需要的头 ...

  5. vector初始化

    对vector对象来说,直接初始化的方式适用于3种情况:1.初始值已知且数量少:2.初始值是另一个vector对象的副本:3.所有元素的初始值都一样.此外还有一种更常见的情况是4.创建一个vector ...

  6. C++中的vector

    opencv中用到了很多vector  整理一下 vector容器是一个模板类,可以存放任何类型的对象(但必须是同一类对象).vector对象可以在运行时高效地添加元素,并且vector中元素是连续存 ...

  7. 斯坦福第十二课:支持向量机(Support Vector Machines)

    12.1  优化目标 12.2  大边界的直观理解 12.3  数学背后的大边界分类(可选) 12.4  核函数 1 12.5  核函数 2 12.6  使用支持向量机 12.1  优化目标 到目前为 ...

  8. C++ 标准库类型-String,Vector and Bitset

    <C++ Primer 4th>读书摘要 最重要的标准库类型是 string 和 vector,它们分别定义了大小可变的字符串和集合.这些标准库类型是语言组成部分中更基本的那些数据类型(如 ...

  9. One Class SVM, SVDD(Support Vector Domain Description)(转)

    今天给大家介绍一下one class classification以及用SVDD(support vector domain description)做one class classification ...

随机推荐

  1. 用js给html设置style

    [html] view plaincopyprint? 原贴地址:<a href="http://heichong.iteye.com/blog/860698">htt ...

  2. (转)DEDECMS模板原理、模板标签学习 - .Little Hann

    本文,小瀚想和大家一起来学习一下DEDECMS中目前所使用的模板技术的原理: 什么是编译式模板.解释式模板,它们的区别是什么? 模板标签有哪些种类,它们的区别是什么,都应用在哪些场景? 学习模板的机制 ...

  3. Android LayoutInflater和findViewById 源码详解

    LayoutInflater大家很熟悉,简单点说就是布局文件XML解析器,setContentView函数也是调用了LayoutInflater 用法: View view = LayoutInfla ...

  4. 计时器(Chronometer)的使用

    安卓提供了一个计时器组件:Chronometer,该组件extends TextView,因此都会显示一段文本,但是它显示的时间是从某个起始时间开始过去了多少时间,它只提供了android:forma ...

  5. javadoc in archive eclipse.

    Open Windows -> Preferences. 2.Select jre from Installed JREs then hit Edit botton on the right. ...

  6. linux common command.

    Stopping & Starting shutdown -h now – Shutdown the system now and do not reboothalt – Stop all p ...

  7. 你好,C++(35)类是如何藏私房钱的?6.2.4 拷贝构造函数

    6.2.6  类成员的访问控制 类成员包括类的成员变量和成员函数,它们分别用来描述类的属性和行为.而类成员的访问控制决定了哪些成员是公开的,可以被外界访问,也可以被自身访问:哪些成员是私有的,只能在类 ...

  8. MyBatis学习笔记(1) —— 基础知识

    mybatis 是支持普通SQL查询,存储过程和高级映射的优秀持久层框架,mybatis 清除了几乎所有的jdbc代码和参数的手工设置及对结果集的检索封装.mybatis可以使用简单的xml和注解用于 ...

  9. Oracle 体系结构及安全管理

    1 oracle数据库服务器构成:数据库和实例2 oracle内部结构: 物理存储结构: 数据文件(xxx.dbf):存放数据 控制文件(xxx.ctl):控制数据库的完整性恢复数据或使用的日志文件 ...

  10. 初涉JavaScript模式 (5) : 原型模式 【一】

    什么是原型模式? 原型模式(prototype)是指用原型实例指向创建对象的种类,并且通过拷贝这些原型创建新的对象.--引自JavaScript设计模式 我们创建的每一个函数都有一个prototype ...