c++里面的2维向量是什么意思????
来源:百度知道 编辑:UC知道 时间:2024/05/14 05:16:01
我看到有段代码是在main函数直接写 vector<int> s;定义s向量时可以不声明它的元素个数吗?比如这样 vector<int> s(10)。
另外我看到定义函数时这样写
void swap(vector<int>& a,vector<int>& b)
{vector<int> temp=a;a=b;b=temp;} 这里的vector<int>& a是声明意思?&不是取址符吗?为什么定义时要加上&?
最后求2维向量的解释。。。
另外我看到定义函数时这样写
void swap(vector<int>& a,vector<int>& b)
{vector<int> temp=a;a=b;b=temp;} 这里的vector<int>& a是声明意思?&不是取址符吗?为什么定义时要加上&?
最后求2维向量的解释。。。
找本C++的书来看。
LZ犯了一个很明显的错误:把C++当C来看。其实二者差很多,要用全新的思维来学习。
void swap(vector<int>& a,vector<int>& b)
这个地方的&是引用声明。不是求地址。
表明传入的参数是按地址传递,而不是按值传递。
向量就是一个封装得很好的数组容器。
至于vector是什么,怎么用,找本介绍STL的书看看吧。
学C++至少要搞懂这些:
1、OOP
2、泛型编程
3、函数/操作符重载
(这也是其和C区别最大的地方,特别是前两项,几乎可以颠覆你在学C中打下的思想基础)
定义vector容器时当然可以不声明它的元素个数!
vector<int> & 表示这是一个引用,就像C语言中的指针变量差不多,也可以在swap()函数中改变传入的实参值。但是引用比指针更安全。
所以2维vector就像二维数组一样,事实上,你完全可以像理解二维数组那样理解2维vector.
可以不声明向量的个数,但只能用push_back()一个一个添加数据.
void swap(vector<int>& a,vector<int>& b) 的& 在这不是取地址 是C++里的一种传值方式(传引用) 当待传递的变量为复杂数据类型时它的效率比传值高,因为它不需调用构造函数.
2维向量 就像2维数组
已知向量a+b=(1,-5) 向量c=(2,-2) 向量a*c=4 向量|b|=4 求向量b与c的夹角
3倍a向量减去2倍b向量等于(-2,4),c向量等于(-2,2), a向量乘以c向量等于2,b向量的绝对值是4.
向量a+向量b+向量c=0向量,a向量的模=4,b向量的模=3,c向量的模=5
设向量a=(cosA,sinA),向量b=(cosB,sinB),且向量a-向量b=(-2/3,1/3),若C为向量a向量b的夹角,试求cosC/2
c里面的stdio是什么意思?
已知A(-1,2),B(2,8),向量AC=1/3向量AB,向量DA=-1/3向量BA,求点C,点D和向量CD的坐标.
向量b和向量c在向量a方向上的投影相等??
向量的问题2
求向量a+b+c的绝对值
已知ABC是三角形的三个顶点 向量AB^2=向量ABX向量AC+向量ABX向量CB+向量BCX向量CA 则三角形ABC是