Форум программистов, компьютерный форум CyberForum.ru

Динамическая память(толи я дурак, то ли правда лыжи не едут) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Пожалуйста подскажите, что означает оператор! http://www.cyberforum.ru/cpp-beginners/thread950097.html
Доброго времени суток. Перевожу Сишный исходник в Делфи и столкнулся с такой строкой v5 = **(_DWORD **)v6->h_addr_list; Подскажите пожалуйста, что она означает, а в частности что означает **(_DWORD **)v6
C++ Чтение графических файлов Здравствуйте уважаемые участники форума. Есть задание для курсового проекта, связанная с программированием C++. Приведу небольшой пример: имеется графический файл, допустим формата jpeg, нужна такая программа, которая считает данный файл для дальнейшей обработки и последующем сохранение в какой либо свой формат. Если есть у кого возможность и знания в этой сфере, пожалуйста помогите(... http://www.cyberforum.ru/cpp-beginners/thread950094.html
Программирование циклического вычислительного процесса C++
12. Дан набор ненулевых целых чисел; признак его завершения — число 0. Вывести сумму всех положительных четных чисел из данного набора. Если требуемые числа в наборе отсутствуют, то вывести 0. Даже представить не могу, как это можно реализовать средствами С++(вот такой вот я чайник). Хотя бы дайте алгоритм действий или натолкните на нужную мысль :)
C++ Как же все-таки лучше всего перегружать операторы?
1. Нужно ли использовать friend там, где это возможно? (или не стоит злоупотреблять где-нибудь?) 2. Стоит ли при перегрузке бинарного оператора "+" делать его обособленным от класса? // свободная ф-ия которая не friend для класса DATES // она просто использует публичный оператор operator += DATES operator + (const DATES& lhs, const DATES& rhs) { DATES result(lhs); result += rhs; //...
C++ Нахождение корня уравнения http://www.cyberforum.ru/cpp-beginners/thread950029.html
найти корни уравнения и отделить один из них методом деления отрезка пополам x^2=sinx
C++ как правильно создать opengl проэкт в IDE code blocks чтобы компилировался? создаю новый проект опенгл, но нифига не компилируется выдает кучу ошибок подробнее

Показать сообщение отдельно
Байт
 Аватар для Байт
13974 / 8805 / 1227
Регистрация: 24.12.2010
Сообщений: 15,949
09.09.2013, 12:09     Динамическая память(толи я дурак, то ли правда лыжи не едут)
SatanaXIII, с интересом ознакомился с темой, но отписаться решил здесь, чтоб свои делетанством не раздражать уважаемых диспутантов. Уверенности, что мой "хакерский" способ сработает, у меня нет, как нет и уверенности, что m[-1] - размер массива. Просто, если бы мне заказали создать механизм кучи, я бы сделал так. Но экспериментов не проводил.
По поводу delete (как и free) могу сказать, что он делает очень важную вещь - присоединяет этот кусок памяти с списку свободной. И все! К сожалению, delete не обнуляет указатель, а мог бы (в отличии от free). Не знаю, что делает delete(NULL), просто стараюсь таких штук не допускать, как и повторного удаления. Для пущей безопасности сделал себе еще на Си такую функцию
C
1
2
3
4
5
6
void myfree(void **pp)
{
  if (pp==NULL || *pp==NULL) return;
  free(*pp);
  *pp=NULL;
}
Что мог бы взять на себя delete, но почему-то не взял

Добавлено через 17 минут
SatanaXIII, Хочу добавить по поводу вашего недоумения от отсутствия в языке средства типа sizeof для динамических массивов, что ваше недоумение полностью разделяю. Ведь еще K&R могли добавить в язык что-то вроде sizearray, который бы работал как sizeof для стековых и статических массивов, а для динамических доставал бы ту самую m[-1]. Хотя это слегка усложнило бы концепции языка, а они ж известные минималисты! Ну чтож, и на Солнце бывают пятна, а она все-таки вертится...
 
Текущее время: 07:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru