c++ - 如何迭代一个int数组?

标签 c++ arrays class sorting iterator

<分区>

我有一个 int 数组。如何为其创建一个 迭代器 来对数组中的每个 x 元素进行排序? 我想使用 std::sort

template<class T>
class SomeClass
{
private:
    int intArray[100];
};

最佳答案

对于数组,它们的迭代器是指向其元素的指针。

您可以使用标准通用函数 std::beginstd::end在 header 中声明 <iterator>获取一系列迭代器。

例如,要对类中定义的数组进行排序,您可以使用标准算法 std::sort .例如

template<class T>
class SomeClass
{
public:
    void sort()
    {
        std::sort( std::begin( intArray ), std::end( intArray ) );
    }

    template <typename Comparison>
    void sort( Comparison comp )
    {
        std::sort( std::begin( intArray ), std::end( intArray ), comp );
    }

private:
    int intArray[100];
};

关于c++ - 如何迭代一个int数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57904370/

相关文章:

c++ - 在 C++11 中,如何获取没有名称的临时左值?

c++ - 转换一个由迭代器指向的对象

c++ - 从二维数组中随机选择而不重复

c++ - 如何使用 XF86VidModeSetGamma() 更改第二台显示器的 Gamma 值?

javascript - 是否可以将构造函数作为类中的方法?

java - 在 While 循环中转换 do While

mysql - PDO - 更新和设置查询(2 个数组)

PHP 未将数组插入 MySQL 数据库

java - 求救: Battleship Java (for statement & array dimensions)

Python,如何从存储在数据库中的类中实例化类?