最赞回答 / weibo_C大调的Cerise_0
c++中,vector是一种数据结构,也可以说是一个类,相当于一个动态数组。其中定义的删除数组的最后一个数据的函数时pop_back(),而不是push_pop()。//都没有定义这个函数当然会报错另外,vector中还有其他删除元素的函数: vec.erase(vec.begin()+j);删除第j+1个元素;vec.erase(vec.begin()+j,vec.end()+k);删除区间[j,k-1];区间从0开始
2016-07-20
最新回答 / 口畏喂马劈劈柴
明白后置和前置的区别,比如:#include <iostream>using namespace std;int main(){ int a = 1,b = 1; int c, d; c = ++a; d = b++; cout<<"c = "<<c<<" , "<<"d = "<<d<<endl;}前置先自增再引用(a先加1,再赋给c,此时c=2)后置先引用再自增(先把b=1赋给d,b再自增...
2016-07-15
最新回答 / 追随
Time类是Watch类的友元这句话没有错,只有Time是Watch的友元Watch才能访问Time里边的数据成员和成员函数,但是Time不能访问Watch的数据成员和成员函数
2016-07-02
已采纳回答 / 灬elliott
从概念上来讲,构造函数的执行可以分成两个阶段,初始化阶段和计算阶段,初始化阶段先于计算阶段。所有类类型(class type)的成员都会在初始化阶段初始化,即使该成员没有出现在构造函数的初始化列表中除了性能问题之外,有些时候合初始化列表是不可或缺的,以下几种情况时必须使用初始化列表1.常量成员,因为常量只能初始化不能赋值,所以必须放在初始化列表里面2.引用类型,引用必须在定义的时候初始化,并且不能重新赋值,所以也要写在初始化列表里面3. 没有默认构造函数的类类型,因为使用初始化列表可以不必调用默认构造函数...
2016-06-26
最新回答 / ONE夏天
#include <iostream>using namespace std;/** * 定义一个矩形类模板Rect * 成员函数:calcArea()、calePerimeter() * 数据成员:m_length、m_height */template <class T>class Rect{public: Rect(T length, T height); int calcArea(); int calePerimeter();public: T m_lengt...
2016-06-08
已采纳回答 / 小小程序员努力努力再努力3231452
#include <iostream>using namespace std;template<typename T,typename M>void display (T &t,M &m){ T temp=0; temp=t; t=m; m=temp;}int main(){ int a=2; double b=2.3; display<int,double>(a,b); cout<<a; ...
2016-05-12