430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
|
||||||
1 | ||||||
Создание вектора wstring через указатели16.07.2013, 10:38. Показов 832. Ответов 9
Метки нет (Все метки)
Вот так правильно? Обратите особое внимание на цикл do-while.
0
|
16.07.2013, 10:38 | |
Ответы с готовыми решениями:
9
Не меняются значения элементов вектора через указатели Через указатели на указатели посчитать сумму двух чисел и записать в третье Написать программу сортировки через указатели на указатели Указатели, вектора |
20.07.2013, 15:26 | 2 | |||||
Или Machines[--i]->id(); меняет указатель MachineID?
0
|
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
|
|
21.07.2013, 09:04 [ТС] | 3 |
Да, id() вызывается с параметром &MachineID. А у вас эта фукнция отображается так, как Вы процитировали? Странно.
0
|
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
|
|
21.07.2013, 18:32 [ТС] | 5 |
Я даже не пробовал запускать пока, проверяю по частям, нет ли явных ошибок типа отсутствующих/лишних звёздочек.
0
|
21.07.2013, 18:42 | 6 | ||||||||||
Да как бы дело не в С++ а в "огрызке кода" вырванного из контекста, кроме того стиль написания как по мне не очень, но это возможно по тому что код использует какие-то либы Си
Добавлено через 5 минут C++, STL
0
|
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
|
|
22.07.2013, 09:35 [ТС] | 7 |
Я же объяснил, что сам алгоритм написан другим человеком, а я, по большому счёту, переоформил в своём (уж наверняка не самом лучшем, но в своём) стиле. Например, изначально код состоял из трёх больших функций, а я, наоборот, пишу настолько маленькие функции, насколько это возможно. Иногда даже две-три строчки. Но в данном случае это затруднительно, потому что используется Virtualbox SDK. Всё это, видимо, и наложило какой-то отпечаток.
P.S. В принципе, от vector можно отказаться, тем более что строки имеют строго определённую длину (это UUID). Но я плохо знаю C++, вот и решил попроще и понадёжнее сделать.
0
|
22.07.2013, 12:48 | 8 |
Обвернуть нужный ф-ционал API в класс что бы он не маячил си стилем.
Добавлено через 2 минуты Обычно разбивают по назначению, а не по размеру ( и конечно с учетом дальнейшего пользователя.)
0
|
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
|
|
22.07.2013, 14:43 [ТС] | 9 |
Была у меня такая мысль, но я счёл это избыточным. Это довольно простой враппер вокруг одной функции VB SDK.
В общем, дискуссия пошла куда-то не туда. Меня интересовало только, не напортачил ли я в этом куске кода. В остальных кусках я ничего особо не менял, только переставлял местами. Так что там я уверен. Можете посоветовать, как оптимизировать эту часть. Например, если я правильно понимаю, можно vector легко на массив wchar заменить. Длина одной строки заранее известна. Количество строк заранее неизвестно, но уж точно не более десятка. После создания массива он уже не будет меняться, только читать из него.
0
|
22.07.2013, 14:59 | 10 |
Я не работал с ним и не знаю, нужно смотреть именно в документацию что бы что-то сказать.
Стоит обратить особое внимание на освобождение ресурсов ( хендлов, строк итп) Добавлено через 2 минуты В данном случае до конца не ясно как работать с присваиваемым указателем, нужно ли освобождать как либо память по его адресу. Добавлено через 4 минуты Если бы создавать класс, то можно было бы организовать вывод ошибок( и вероятно можно получить их описание) в лог, что позволило бы удобно отлаживать программу и судить от правильности кода.
1
|
22.07.2013, 14:59 | |
22.07.2013, 14:59 | |
Помогаю со студенческими работами здесь
10
Создание нового вектора посредством выборки значений данного вектора Создание контейнера (вектора), хранящего вектора разной размерности Вектора Указатели и RDP ActiveX Объясните, что означает wstring input = L""; и wstring output = L""; ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Как использовать комментарии в JSON
InfoMaster 18.01.2025
JSON (JavaScript Object Notation) представляет собой легкий и широко используемый формат обмена данными, который стал стандартом де-факто для веб-приложений и программных интерфейсов. При работе с. . .
|
Как заставить git pull перезаписать локальные файлы в Git
InfoMaster 18.01.2025
Проблема перезаписи локальных файлов в Git
При работе с системой контроля версий Git разработчики часто сталкиваются с ситуацией, когда необходимо синхронизировать локальный репозиторий с. . .
|
Что значит оператор --> в C++ и для чего он нужен
InfoMaster 18.01.2025
В языке программирования C++ оператор -> (стрелка) является одним из фундаментальных элементов синтаксиса, обеспечивающим удобный доступ к членам структур и классов через указатели. Этот оператор был. . .
|
Как отменить git add до коммита в Git
InfoMaster 18.01.2025
В современной разработке программного обеспечения система контроля версий Git играет ключевую роль в управлении изменениями кода. Одной из наиболее частых операций, с которой сталкиваются. . .
|
Какой MIME-тип JSON указывать и когда
InfoMaster 18.01.2025
В современном мире веб-разработки формат JSON (JavaScript Object Notation) стал неотъемлемой частью обмена данными между клиентом и сервером. Этот легковесный формат хранения и передачи данных. . .
|
Как переименовать ветку (branch) в Git
InfoMaster 18.01.2025
Одним из важнейших аспектов работы с Git является правильное управление ветками, которые позволяют разработчикам эффективно организовывать процесс разработки и тестирования новых функций. Особое. . .
|
Как удалить определенный элемент из массива в JavaScript
InfoMaster 18.01.2025
В современной веб-разработке массивы являются одной из ключевых структур данных, с которыми приходится работать разработчикам JavaScript. Операция удаления элементов из массива представляет собой. . .
|
Что такое yield в Python и как это работает
InfoMaster 18.01.2025
Концепция генераторов и yield в Python
В мире программирования на Python существуют мощные инструменты для эффективной работы с последовательностями данных, и одним из таких инструментов является. . .
|
В чем разница между git pull и git fetch в Git
InfoMaster 18.01.2025
Работая в командах разработчиков, специалисты постоянно сталкиваются с необходимостью синхронизации локальных репозиториев Git с удаленными серверами. Две команды - git fetch и git pull -. . .
|
Как удалить ветку (branch) в Git в локальном и удалённом репозитории
InfoMaster 18.01.2025
Ветка в Git представляет собой легковесный указатель на определенный коммит в истории разработки. Когда разработчики создают новую ветку, они получают возможность вносить изменения в код, не. . .
|
Почему обработка сортированного массива быстрее, чем несортированного
InfoMaster 18.01.2025
Влияние сортировки массивов на скорость обработки данных
При разработке программного обеспечения оптимизация производительности играет ключевую роль в создании эффективных приложений. Одним из. . .
|
Зачем нужны свойства в классе, если есть поля
InfoMaster 18.01.2025
Понятие свойств и полей в классах
В современном объектно-ориентированном программировании поля и свойства являются фундаментальными элементами классов, которые обеспечивают хранение и управление. . .
|