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

Нужен совет по выделению памяти - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Анти спам ,блокировака чата http://www.cyberforum.ru/cpp-beginners/thread637292.html
Не могу придумать как написать код С++ что бы когда человек в чат пишет очень быстро больше 5 сообщений ,то есть флудит срабатывал вот такой код player->GetSession()->m_muteTime = time(0) + 5; и его чат блокировался на 5 минут. Если кто может напишите Код
C++ Рабочий стол Как мне прописать в программе путь до рабочего стола? http://www.cyberforum.ru/cpp-beginners/thread637250.html
Глобальные статические переменные C++
Ребят, может мне кто-нибудь объяснить назначение глобальных статических переменных? Литература (в частности Шилдт) говорит о том, что к таким переменным можно обратиться из первого файла через функцию, определенную во втором файле (вместе с глобальными статик переменными). А вот если попытаться получить доступ непосредственно (не через функцию) к этим переменным из первого файла, то получим фейл,...
Ярлык C++
Можно как нибудь програмно создать ярлык на определенный сайт в определенном месте?
C++ Выражение должно иметь тип класса. Да ну? http://www.cyberforum.ru/cpp-beginners/thread637241.html
перекопал весь форум, ни где не нашел решение моей проблемы. #include <GL/glut.h> #include <Windows.h> #include <iostream> #include <stdio.h> #include <math.h> #include <time.h> #include <vector>
C++ Диспетчер задач и c++ Ребят, здравствуйте. Вопрос следующий: в диспетчере задач, во вкладке процессы есть поле описание у каждого процесса. Вот как установить это поле в своей программе. Сейчас там выводится название программы например - main.exe. подробнее

Показать сообщение отдельно
Dr.Urban
63 / 58 / 7
Регистрация: 14.12.2011
Сообщений: 193

Нужен совет по выделению памяти - C++

13.08.2012, 22:31. Просмотров 447. Ответов 8
Метки (Все метки)

Здравствуйте. В проекте частенько нужно выделять память только желательно проверять на bad_alloc.

Написал функцию алокатор с проверкой:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void* SafeMemoryAlloc(void ** ptr, size_t bytes, size_t size)
{
    try
    {
        if ( ptr == NULL )
        {
            throw "Ptr to memory alloc is NULL or bad argument";
        }
        *ptr = malloc(size * bytes);
    }
    catch(const char* exc)
    {
        cout << exc << endl;
    }
    catch(std::bad_alloc)
    {
        cout << "Bad memory allocation in SafeMemoryAlloc";
    }
    return *ptr;
    
}
Какие у Вас будут замечания и не дико ли смотрится вызов функции:

C++
1
this->wndName = (char*)SafeMemoryAlloc( (void**)&this->wndName, sizeof(char) , FNAME_MAX_LEN );
Спасибо за внимание!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru