Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Как можно заменить или без const int n = 10; ? https://www.cyberforum.ru/ cpp-beginners/ thread2732097.html
код: #include<iostream> using namespace std; const int n = 10; int aa = {1, 2, 3, 4, -1, 0, 5, 6}; int main() { int i, j; for (i = 0, j = 0; i < n; i++)
C++ Сортировка массива по возрастанию
Помогите сделать вместо сортировки по убыванию,сортировку по возрастанию #include <iostream> #include <algorithm> #include <windows.h> //Шрифт консоли - Lucida Console using namespace std; int main() {
C++ rvalue ссылки, возврат функции и передача аргументов в рамках move semantics https://www.cyberforum.ru/ cpp-beginners/ thread2732091.html
Здравствуйте. Я перечитал и пересмотрел много материала по move semantics, тем не менее у меня осталось по этой теме несколько вопросов, так как у меня не получилось нормально структуризировать всю полученную информацию. 1) Насколько я понял rvalue-ссылкам можно присваивать только rvalue значение const rvalue-ссылкам можно присваивать rvalue и const rvalue значения
C++ Исправить код #include <iostream> #include <string> using namespace std; int main() { setlocale(LC_ALL, "Russian"); int array = { https://www.cyberforum.ru/ cpp-beginners/ thread2732090.html
C++ Нужно перевернуть массив 3х4 так, чтобы учесть деление на 0. Из всего этого я смог найти только формулу bij=1/aij
Этот маленький кусочек кода позволяет ввести этот массив через терминал , а что дальше делать я даже не представляю помогите пожалуйста ^^ Ну и продублирую формулу bij=1/aij #include<iostream> using namespace std; void main() { int arr;
C++ Переделать код С java на c++ https://www.cyberforum.ru/ cpp-beginners/ thread2732073.html
С java на c++ public class Main { public static void main(String args) { int array = {{36,37,38,39,40,41,42,43,44,45,46},{1,4,17,0,22,11,2,1,1,1,2}}; int MaxEl = 0; int index = 0;
C++ Определить сколько различных слов можно составить из тех же карточек, что и заданное https://www.cyberforum.ru/ cpp-beginners/ thread2732069.html
На день рождения Пете подарили набор карточек с буквами. Теперь Петя с большим интересом составляет из них разные слова. И вот, однажды, составив очередное слово, Петя заинтересовался вопросом: "А сколько различных слов можно составить из тех же карточек, что и данное?". input: solo output: 12 Вот собстна моя программа, ошибку в упор не вижу. #include <iostream> #include <vector>...
C++ Игра в спички
Помогите пожалуйста с решением задачи! На столе лежит кучка из N спичек. Двое играют в такую игру. За один ход разрешается взять из кучки одну, две спички. Выигрывает тот, кто забирает последнюю спичку. Не могу понять как концовку сделать. #include<iostream> #include <time.h> using namespace std;
C++ Используя оператор множественного выбора, составить программу для выполнения задания Помогите, пожалуйста, решить вот такую задачку: Используя оператор множественного выбора, составить программу для выполнения задания. Для неопознанного объекта выдать соответствующее сообщение на экран. По порядковому номеру ЭВМ выдать фамилию и инициалы работающего на ней. https://www.cyberforum.ru/ cpp-beginners/ thread2732058.html C++ Минимум и максимум в двумерном массиве #include<iostream> using namespace std; int main() { int n, m; int arr; for (int i = 0; i < 10; ++i) for (int j = 0; j < 2; ++j) cin >> arr; https://www.cyberforum.ru/ cpp-beginners/ thread2732056.html
Лабораторная работа по структурам C++
Задание :Описать структуру с именем Sportsmen, содержащую следующие поля: name – имя спортсмена, vid – название вида спорта, turnir – турниры, в которых участвовал спортсмен (массив из 10 строк). Написать программу, выполняющую ввод с клавиатуры данных в массив Sport, состоящий из 10 элементов типа Sportsmen. Записи должны быть упорядочены по имени спортсмена. Вывести на экран информацию о...
C++ Адреса созданных объектов отличаются от адресов этих же объектов, добавленных в список Мне проконсультироваться :) У меня в проге есть абстрактный класс, производные от него классы. Есть самостоятельно реализованный класс для односвязного списка. В классах определены методы для добавления указателя на объект класса в список (вызывается функция списка для добавления узла, куда помещается this-указатель конкретного класса (смотря для какого объекта вызывается функция)) и просмотра... https://www.cyberforum.ru/ cpp-beginners/ thread2732050.html
Эксперт С++
8971 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
18.11.2020, 05:31 0

можно ли сделать чтоб std::wstring не обнулял память при resize? - C++ - Ответ 15012214

18.11.2020, 05:31. Показов 572. Ответов 7
Метки (Все метки)

Ответ

Цитата Сообщение от WillyM Посмотреть сообщение
можно как-то принудительно сделать так, чтоб оно ничего не обнуляло - ни при resize в пределах capacity, ни при resize на больше чем capacity?
не можно.

то, что ты хочешь - противоречит здравому смыслу.
а так же, противоречит правилам языка (провоцирует UB)

при ресайзе в меньшую сторону необходимо запустить деструкторы
для тех ячеек памяти, которые должны стать недействительными.
что бы прекратить время жизни живущих в них объектов.

при ресайзе в большую сторону,
становятся доступными ячейки памяти,
содержимое которых нужно проинициализровать конструктором,
что бы напротив, начать время жизни объектов.

если этого не сделать, тогда ячейки будут хранить мусор.
и в дальнейшем, при попытке доступа к объектам,
время жизни которых не началось,
мы получим неопределенное поведение.

таким образом, получается, что ты хочешь,
что бы std::wstring::resize создавал неинициализированные ячейки памяти,
обращение к которым будет приводить к неопределенному поведению.

так делать нельзя.

Вернуться к обсуждению:
можно ли сделать чтоб std::wstring не обнулял память при resize? C++
0
Заказать работу у эксперта

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.11.2020, 05:31
Готовые ответы и решения:

Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался?
сабж...( std::count &lt;&lt; std::hex &lt;&lt; (long) 0x0a; ) выводится просто a, вместо 0а, а надо чтоб...

Можно ли читать UTF8 в std::wstring потоком?
Интересует загрузка файла целиком.

Как правильно перевести std::wstring в std::string ?
Собственно как? :)

Непонятная ошибка при вызове std::vector::resize
Недавно заметил непонятную ошибку при вызове метода resize(); Я так и не понял как правильно...

7
18.11.2020, 05:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.11.2020, 05:31
Помогаю со студенческими работами здесь

Можно ли как-то скачать данные в память 1 раз при загрузке страницы, чтоб больше не обращаться к API
Доброго времени суток! Есть API отдающий информацию в JSON формате, которую надо распарсить и...

Как привести std::wstring к std::string?
Как привести std::wstring к std::string?

Преобразование из std::string - в std::wstring
Как попроще преобразовать string в широкую строку wstring? Так не получается: #include...

Std::string and std::wstring convert
случайно наткнулся на такую вот конвертацию std::string в std::wstring std::string text(&quot;text&quot;);...

Конвертация из std::string в std::wstring
В std::string находятся прочитанные данные из файла, в котором содержатся смешанные данные (что-то...

std::string -> std::wstring
Как перевести данный код в код с использованием wstring ( посути использовать...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru