Сообщение Re[3]: Про красивость работы с std::vector от 15.03.2025 9:23
Изменено 15.03.2025 9:28 rg45
Re[3]: Про красивость работы с std::vector
Здравствуйте, Shmj, Вы писали:
S>
S>- не создается копия данных на каждый чих, что более разумно на мой взгляд.
У меня такое ощущение, что ты пытаешься писать программу C# на языке С++. По-моему, давно пора бы расстаться с иллюзиями и понять, что это разные языки. Если ты не хочешь, чтоб создавалась копия, значит, нужно объявлять ссылку. Мало того, нужно ещё и подобрать правильный тип для ссылки — lvalue или rvalue, константная или неконстантная.
S>
S>QVector<int> vector1 = {1, 2, 3};
S>QVector<int> vector2 = vector1;
S>qDebug() << (vector1.data() == vector2.data()); // true, данные общие
S>
S>- не создается копия данных на каждый чих, что более разумно на мой взгляд.
У меня такое ощущение, что ты пытаешься писать программу C# на языке С++. По-моему, давно пора бы расстаться с иллюзиями и понять, что это разные языки. Если ты не хочешь, чтоб создавалась копия, значит, нужно объявлять ссылку. Мало того, нужно ещё и подобрать правильный тип для ссылки — lvalue или rvalue, константная или неконстантная.
Re[3]: Про красивость работы с std::vector
Здравствуйте, Shmj, Вы писали:
S>
S>- не создается копия данных на каждый чих, что более разумно на мой взгляд.
У меня такое ощущение, что ты пытаешься писать на C++ как на C#. По-моему, давно пора бы расстаться с иллюзиями и понять, что это разные языки. Если ты не хочешь, чтоб создавалась копия, значит, нужно объявлять ссылку. Мало того, нужно ещё и подобрать правильный тип для ссылки — lvalue или rvalue, константная или неконстантная.
S>
S>QVector<int> vector1 = {1, 2, 3};
S>QVector<int> vector2 = vector1;
S>qDebug() << (vector1.data() == vector2.data()); // true, данные общие
S>
S>- не создается копия данных на каждый чих, что более разумно на мой взгляд.
У меня такое ощущение, что ты пытаешься писать на C++ как на C#. По-моему, давно пора бы расстаться с иллюзиями и понять, что это разные языки. Если ты не хочешь, чтоб создавалась копия, значит, нужно объявлять ссылку. Мало того, нужно ещё и подобрать правильный тип для ссылки — lvalue или rvalue, константная или неконстантная.