当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ set insert()用法及代码示例


set::insert是C++ STL中的内置函数,可在集合容器中插入元素或将元素从集合中的位置插入到另一个位置到另一个集合。

  1. 用法:
    iterator set_name.insert(element)
    

    参数:该函数接受要插入到设置容器中的强制性参数element 。

    返回值:该函数返回一个迭代器,该迭代器指向容器中插入的元素。


    以下示例程序旨在说明上述函数:

    // CPP program to demonstrate the 
    // set::insert(element) function 
    #include <bits/stdc++.h> 
    using namespace std; 
    int main() 
    { 
      
        set<int> s; 
      
        // Function to insert elements 
        // in the set container 
        s.insert(1); 
        s.insert(4); 
        s.insert(2); 
        s.insert(5); 
        s.insert(3); 
      
        cout << "The elements in set are: "; 
        for (auto it = s.begin(); it != s.end(); it++) 
            cout << *it << " "; 
      
        return 0; 
    }
    输出:
    The elements in set are: 1 2 3 4 5
    
  2. 用法:
    iterator set_name.insert(iterator position, element)
    

    参数:该函数接受两个参数,如下所述:

    • element:它指定要插入到集合容器中的元素。
    • position:它不指定要插入的位置,它仅指向要开始搜索操作以插入的位置,以加快处理速度。插入是根据设置的容器遵循的顺序完成的。

    返回值:该函数返回一个迭代器,该迭代器指向容器中插入的元素。

    以下示例程序旨在说明上述函数:

    // CPP program to demonstrate the 
    // set::insert(iterator, element) function 
    #include <bits/stdc++.h> 
    using namespace std; 
    int main() 
    { 
      
        set<int> s; 
      
        // Function to insert elements 
        // in the set container 
        auto itr = s.insert(s.begin(), 1); 
      
        // the time taken to insertion 
        // is very less as the correct 
        // position for isnertion is given 
        itr = s.insert(itr, 4); 
        itr = s.insert(itr, 2); 
        itr = s.insert(itr, 5); 
        itr = s.insert(itr, 3); 
      
        cout << "The elements in set are: "; 
        for (auto it = s.begin(); it != s.end(); it++) 
            cout << *it << " "; 
      
        return 0; 
    }
    输出:
    The elements in set are: 1 2 3 4 5
    
  3. 用法:
    iterator set_name.insert(iterator position1, iterator position2)
    

    参数:该函数接受两个参数position1和position2,它们指定元素的范围。范围[position1,last)内的所有元素都插入到另一个set容器中。

    返回值:该函数返回一个集合,其中所有元素都在[position1,last)范围内。

    以下示例程序旨在说明上述函数:

    // CPP program to demonstrate the 
    // set::insert(iterator1, iterator2) function 
    #include <bits/stdc++.h> 
    using namespace std; 
    int main() 
    { 
      
        set<int> s1; 
      
        // Function to insert elements 
        // in the set container 
        s1.insert(1); 
        s1.insert(4); 
        s1.insert(2); 
        s1.insert(5); 
        s1.insert(3); 
      
        cout << "The elements in set1 are: "; 
        for (auto it = s1.begin(); it != s1.end(); it++) 
            cout << *it << " "; 
      
        set<int> s2; 
      
        // Function to insert one set to another 
        // all elements from where 3 is to end is 
        // inserted to set2 
        s2.insert(s1.find(3), s1.end()); 
      
        cout << "\nThe elements in set2 are: "; 
        for (auto it = s2.begin(); it != s2.end(); it++) 
            cout << *it << " "; 
      
        return 0; 
    }
    输出:
    The elements in set1 are: 1 2 3 4 5 
    The elements in set2 are: 3 4 5
    


相关用法


注:本文由纯净天空筛选整理自gopaldave大神的英文原创作品 set insert() function in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。