一步步学Qt,第九天-Q"STL"与STL-Qvector,vector

一步步学Qt,第九天-Q"STL"与STL-Qvector,vector

这个部分或许没有代码出现,更多的是文字分析,即使会出现也可能就是很简短的部分。今天主要来分析和对比一下Q”STL”与C++的STL,主要讲解他们各自在定义和使用的区别,不仅仅是学习C++的提升也是对Qt与C++STL的结合。

A、QVector与vector

1、 对应变量的声明:

QVector var_qstl;

vector var_stl;

eg:      QVector n_vector_qstl;    //声明一个无初始化向量大小的向量n_vector_qstl

vector n_vector_stl;   //声明一个无初始化向量大小的向量n_vector_stl

2、项的赋值以及项值的获取

2.1  项的赋值
 QVector n_vector_qstl;   //没有初始化向量大小
    //set Values
    n_vector_qstl.append(1);
    n_vector_qstl.append(2);
    n_vector_qstl.append(3);
    QVector n_vector_qstl(3);   //已初始化向量大小
    //set Values
    n_vector_qstl[0] = 1;
    n_vector_qstl[1] = 2;
    n_vector_qstl[2] = 3;

vector n_vector_stl;   //没有初始化向量大小
    //set values
    n_vector_stl.push_back(1);
    n_vector_stl.push_back(2);
    n_vector_stl.push_back(3);
    vector n_vector_stl(3);   //已初始化向量大小
    //set values
    n_vector_stl[0] = 1;
    n_vector_stl[1] = 2;
    n_vector_stl[2] = 3;

2.2  项值获取
QVector:

//getValues
for (int i=0; i

或者:

for (QVector::size_type i=0; i!=n_vector_qstl.count(); i++){
        cout << n_vector_qstl[i] << setw(2);
    }
    cout << endl;

vector:

//get values
    for(vector::size_type ix=0; ix!=n_vector_stl.size(); ++ix){
        cout << n_vector_stl[ix] << setw(2);
    }
    cout << endl;
2.3  完整代码:

QVector:

#include 
#include 
#include 
#include 
using namespace std;


int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QVector n_vector_qstl;

    //set Values
    n_vector_qstl.append(1);
    n_vector_qstl.append(2);
    n_vector_qstl.append(3);
    //getValues
    for (int i=0; i::size_type i=0; i!=n_vector_qstl.count(); i++){
        cout << n_vector_qstl[i] << setw(2);
    }
    cout << endl;
    return a.exec();
}

vector:

#include 
#include 
#include 
#include 
using namespace std;

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    vector n_vector_stl;
    //set values
    n_vector_stl.push_back(1);
    n_vector_stl.push_back(2);
    n_vector_stl.push_back(3);
    //get values
    for(vector::size_type ix=0; ix!=n_vector_stl.size(); ++ix){
        cout << n_vector_stl[ix] << setw(2);
    }
    cout << endl;
    return a.exec();
}



转载于:https://www.cnblogs.com/Podevor/archive/2011/09/01/2788128.html

你可能感兴趣的:(c/c++)