数学中,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. #BeginLibraryItem 的疑问...

    <!-- #BeginLibraryItem "/library/ur_here.lbi" --><div style="padding:3px 15p ...

  2. c#字符串驻留机制

    http://www.cnblogs.com/instance/archive/2011/05/24/2056091.html

  3. Oracle Pivot学习心得

    今天在做一个查询报表需要将多行的查询结果转换成一行,数据格式如下 ID   Type Parameter Value Machine_NO Operator UpdateTime 1 11111111 ...

  4. type和instance

    获取对象类型 type(object) >>> test_data = [1, 2, 3] >>> type(test_data) <type 'list'& ...

  5. C语言结构体占用空间内存大小解析

    结构体的数据类型的有点我们就不啰嗦了,直接来看相同数据结构体的几种书写的格式吧. 格式一: 01.struct tagPhone 02.{ 03.     char   A; 04.     int  ...

  6. 线程间操作无效: 从不是创建控件“textBox2”的线程访问它

    如何:对 Windows 窗体控件进行线程安全调用 线程间操作无效: 从不是创建控件的线程访问它的三种方法 如果使用多线程处理来提高 Windows 窗体应用程序的性能,则你必须确保以线程安全的方式调 ...

  7. bind函数

    bind函数把一个本地协议地址赋予一个套接字 对于网际协议,协议地址是32位的IPv4地址或128位的IPv6与16位的TCP或UDP端口号的组合 int bind ( int sockfd, con ...

  8. gcc编译动态和静态链接库

    我们通常把一些公用函数制作成函数库,供其它程序使用.函数库分为静态库和动态库两种.静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库.动态库在程序编译时并不会被连接到目标代码中,而是 ...

  9. Windows 7 mklink命令详解

    mklink是Windows 7下的一个类似于linux下In的命令,其作用是在NTFS文件系统中创建文件或目录的链接(类似于桌面快捷方式).如果加以利用其发挥的作用是非常的大的,不仅可以帮助我们节省 ...

  10. SQL 2008 如何配置远程连接

    初次接触sql2008 相比05 改观还是挺大的 在配置方面 如何打开"远程连接" 成了最棘手的   到网上找了大半天资料    依然云里雾里 参考网上的众多资料 结合本人的实际经 ...