Re: Копирование векторов
От: flаt  
Дата: 19.05.20 08:28
Оценка: :))
Здравствуйте, vasvladal, Вы писали:


V>Есть рабочая , такая же по содержимому, структура, но не под namespace:


memcpy?
Re: Копирование векторов
От: koenjihyakkei Россия  
Дата: 19.05.20 10:31
Оценка: +1
Здравствуйте, vasvladal, Вы писали:

Сделать в Params1 конструктор, принимающий Targs::Params, и через std::copy скопировать.
Копирование векторов
От: vasvladal  
Дата: 19.05.20 06:18
Оценка:
Есть структура под namespace:
namespace Targs
{
    struct Params
    {
    ...
    };
}

Поменять ее я не могу

Есть рабочая , такая же по содержимому, структура, но не под namespace:
struct Params1
    {
    ...
    };


В процессе работы получается вектор структур Targs::Params:
std::vector<Targs::Params> vPar;


Необходимо скопировать данные в:
std::vector<Params1> vPar1;


Вот так можно, но как-то "некрасиво":
vPar1.resize(vPar.size());
    for(int i = 0; i < vPar.size(); i++)
    {
        vPar1.field_1 = vPar.field_1;
        ...
        vPar1.field_1000=vPar.field_1000;
    }



А хотелось бы вот так:
vPar1 = vPar;
cpp
Re: Копирование векторов
От: Erop Россия  
Дата: 19.05.20 11:50
Оценка:
Здравствуйте, vasvladal, Вы писали:

V>
V>namespace Targs
<...>
V>


V>Есть рабочая , такая же по содержимому, структура, но не под namespace:

V>
V>struct Params1
V>    {
V>    ...
V>    };
V>


А зачем она такая же, но другая? И что значит "поменять"?
Варианты:
1) using Targs::Params
2) typedef Targs::Params Params1
3) Вывести Params1 из Targs::Params и доопределить нужные конструкторы и другие методы
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re: Копирование векторов
От: AleksandrN Россия  
Дата: 20.05.20 08:31
Оценка:
Здравствуйте, vasvladal, Вы писали:

V>Есть рабочая , такая же по содержимому, структура, но не под namespace:


Зачем нужно 2 одинаковых структуры, вместо того, что бы использовать одну?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.