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

Malloc vs new - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализовать собственный cin http://www.cyberforum.ru/cpp-beginners/thread1495377.html
Я короче хочу реализовать собственный cin. Просто оно медленно работает. И в этом проблема. typedef long long ll; struct Cin{ void operator >>(ll &x){ scanf("%lld", &x); }...
C++ Вывести те согласные буквы, которые входят в первое предложение и не входят во второе Всем привет помогите пожалуйста-Решить задачу с использованием множества: имеются два предложения, состоящие из русских букв, цифр и знаков препинания. Вывести те согласные буквы, которые входят в... http://www.cyberforum.ru/cpp-beginners/thread1495365.html
Вывод escape в консоль C++
короче не могу вывести в консоль \ cout << "( \"; что нужно добавить,изменить чтобы вывело?
Квадратное уравнение (найти ошибку) C++
Добрый день, решал вот такую задачку, однако она не проходит один из тестов, помогите найти ошибку. Также, как я понял, при отсутствии корней нужно вывести просто 0 - как-то умалчивается об этом в...
C++ Обработка нажатия клавиши http://www.cyberforum.ru/cpp-beginners/thread1495324.html
нужно задать нажатию клавиши enter другие функции: private: System::Void textBox1_TextChanged_1(System::Object^ sender, System::EventArgs^ e) { if (Control::ModifierKeys == Keys::Enter) {...
C++ Шаблоны В файле есть такое определение template<int32 aMaxLength> class TTextBuffer: public MString { public: /** Construct an empty TTextBuffer object. */ TTextBuffer() { } /** Construct a... подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
08.07.2015, 20:50
malloc как и new выделяет память, отличие в том что new кидает exception(собственно поэтому маллок нельзя использовать в плюсовых программах). Выше на прау постов человек пытался подстроить к алоцирвоанию placement new это отдельная тема и для простой структуры или типа разницы в аллоцировании хоть будет нью хоть маллок не будет никакой.

Добавлено через 12 минут
Вот конкретно пергрузка аллоцирования (всё будет работать но код будет не кашерным с точки зрения исключений)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
using namespace std;
 
void* operator new(size_t size) {
    return malloc(size);
}
 
void operator delete(void* ptr) {
  free(ptr);
}
 
class cTest{
    protected :
    size_t v;
    public:
    cTest(){
        v = 100;
    }
    size_t get_v(){return v;}
};
 
int main(){
    cTest * ptr = new cTest();
    cout<<ptr->get_v()<<endl;
    return 0;
}
http://ideone.com/lfevfL
И честное слово мне уже на форуме надоел бред мол new отличается от malloc (кроме ексепшина ничем, а если вы пишете под ВИН то поглядите на СРТ дебаг память - удивитесь вообще).

Не по теме:

Есть new есть placement new не мешайте понятния чёрт побери.

2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru