Чтобы скопировать один вектор в другой, вы можете использовать std::copy
двумя способами:
1) изменить размер целевого вектора и скопировать с помощью итератора:
tlogData.clear();
tlogData.resize(CLogData.size());
std::copy(CLogData.begin(), CLogData.end(), tLogData.begin());
2) использовать back_inserter:
std::copy(CLogData.begin(), CLogData.end(), std::back_inserter(tLogData));
Но это копирует только указатели из одного вектора в другой - указатели указывают на одни и те же объекты в обоих векторах!
Если вы действительно хотите скопировать объекты, вам нужно создать новые:
size_t n = CLogData.size();
for (size_t i = 0; i < n; ++i) {
tLogData.push_back(new CLog(*CLogData[i]));
}
Это работает, только если CLog
имеет конструктор копирования.