Reemplazo de un rango entre dos iteradores en C ++

vnikonov_63

Supongamos que tengo dos iteradores no constantes que comienzan y terminan. Quiero reemplazar completamente el rango entre el comienzo y el final con valores, que están entre otros dos iteradores. Sé que con iteradores no constantes puedo usar la siguiente sintaxis.

*begin = *result.begin();
*end = *result.end();

Pero esto solo cambiará los valores detrás de los iteradores de inicio y fin

Ser más preciso. Tengo un vector inicial

          {1, 2, 3, 4, 5, 6, 7}
           ^           ^
         begin        end 

y algún otro vector llamado resultado, que contiene

       {6, 6, 3, 5, 4, 13, 99}
           ^           ^
         begin        end 

al final quiero que mi matriz inicial se vea así

       {6, 3, 5, 4, 5, 6, 7}
MikeCAT

Utilizando std::copy(), se puede hacer así:

#include <iostream>
#include <vector>
#include <algorithm>

void printVector(const std::vector<int>& v) {
    bool first = true;
    std::cout << '{';
    for (int i : v) {
        if (!first) std::cout << ", ";
        std::cout << i;
        first = false;
    }
    std::cout << "}\n";
}

int main(void) {
    std::vector<int> v1 = {1, 2, 3, 4, 5, 6, 7};
    std::vector<int> v2 = {6, 6, 3, 5, 4, 13, 99};

    printVector(v1);
    printVector(v2);

    std::vector<int>::iterator dest_begin = v1.begin();
    std::vector<int>::iterator src_begin = std::next(v2.begin(), 1);
    std::vector<int>::iterator src_end = std::next(v2.begin(), 5);

    std::copy(src_begin, src_end, dest_begin);

    printVector(v1);

    return 0;
}

Salida:

{1, 2, 3, 4, 5, 6, 7}
{6, 6, 3, 5, 4, 13, 99}
{6, 3, 5, 4, 5, 6, 7}

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

¿Cómo reemplazo un rango de caracteres en Ruby?

En rangos-v3, ¿cómo creo un rango a partir de un par de iteradores?

Cómo calcular el porcentaje entre el rango de dos valores en un tercer valor

Copiar-asignar a una tupla desde un rango de iteradores en C ++ 17

Reemplazo de un espacio en blanco entre dos letras mayúsculas con un guión bajo

¿Cómo realizar el reemplazo de sed en un rango de líneas?

Reemplazo de un rango de valores de columna en R

Reemplazo de celdas en blanco en un rango con 0

Cómo calcular la diferencia entre conjuntos consecutivos de dos columnas en un rango de columnas usando dplyr

Iteradores de estilo de rango en JavaScript

Cómo seleccionar entre un rango de particiones en MySQL

Cómo seleccionar entre un rango de particiones en MySQL

Dentro de una columna, creando un rango entre dos elementos en una lista en PySpark

¿Cómo establecer el rango entre dos pulgares en la barra de búsqueda de rango en Android?

Cómo verificar si un rango de fechas está entre otro rango de fechas en Ruby

¿Cómo puedo extraer todas las filas de una tabla donde al menos un día entre un rango de fechas de dos columnas se encuentra entre el rango de fechas en una segmentación?

¿Cómo puedo extraer todas las filas de una tabla donde al menos un día entre un rango de fechas de dos columnas se encuentra entre el rango de fechas en una segmentación?

Cómo crear una lista de semanas / meses / trimestres entre un rango de dos fechas

encontrar el rango entre dos columnas en un marco de datos R

Crea un rango entre dos números en JavaScript

cómo imitar la búsqueda y reemplazo en el script de aplicaciones de Google para un rango

¿Cómo puedo crear una matriz aleatoria entre un rango de otras dos matrices?

¿Cómo generar un rango de números entre dos valores alfanuméricos?

Cómo recodificar un rango de filas entre dos valores específicos

¿Cómo generar un rango de números alfanuméricos entre dos números?

¿Cómo contar el promedio de un cierto rango entre dos valores específicos?

Obtener el rango de la semana entre dos fechas en c #

¿Cómo puedo unir dos tablas en una ID y un RANGO DE FECHAS en SQL?

Rango más alto dentro de un rango: dos conjuntos de datos coincidentes en el rango

TOP Lista

  1. 1

    ¿Cómo ocultar la aplicación web de los robots de búsqueda? (ASP.NET)

  2. 2

    Pandas의 CSV 파일을 Pandas 데이터 프레임으로 가져 오기

  3. 3

    uitableview delete button image in iOS

  4. 4

    Manera correcta de agregar referencias al proyecto C # de modo que sean compatibles con el control de versiones

  5. 5

    Swift / Firebase : Facebook 사용자가 계정을 만들 때 Firebase 데이터베이스에 제대로 저장하려면 어떻게해야합니까?

  6. 6

    caída condicional de filas desde un marco de datos de pandas

  7. 7

    Link library in Visual Studio, why two different ways?

  8. 8

    Pagination class not getting applied in html

  9. 9

    Que signifie Decimal (-1)?

  10. 10

    UIButton textLabel with different fonts

  11. 11

    WPF pleine largeur DataGridColumn sur la largeur de DataGrid

  12. 12

    Opción de máquina virtual no reconocida 'MaxPermSize = 512m' cuando se ejecuta Zeppelin

  13. 13

    matplotlib로 그래프를 그리는 동안 커서 위치에서 날짜 / 시간을 볼 수 없습니다. "DateFormatter에서 x = 0 값을 찾았습니다"라는 오류가 발생합니다.

  14. 14

    ¿Es posible en Windows evitar que otras aplicaciones se enganchen en las DLL del sistema?

  15. 15

    Error de la base de datos de Android Firebase: Permiso denegado al depurar en un teléfono

  16. 16

    Pandas: suma filas de DataFrame para columnas dadas

  17. 17

    ggplot2: gráfico con líneas y puntos para problemas de leyenda de dos conjuntos de datos

  18. 18

    ¿Cómo especificar el puerto en el que se aloja una aplicación ASP.NET Core?

  19. 19

    Recherche de la position d'index d'une valeur dans r dataframe

  20. 20

    GPU를 사용하여 ffmpeg 필터의 처리 속도를 가속화하는 방법은 무엇입니까?

  21. 21

    nested observables executed one after the other after termination

CalienteEtiquetas

Archivo