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

Как выглядит изнутри динамическое выделение объекта через new? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ new - это операция или все таки оператор? http://www.cyberforum.ru/cpp-beginners/thread810541.html
В большинстве интернет-источниках написано, (взять хоть википедию (да, я понимаю, что там много неправильной информации)). Но действительно, если вбить в поиск new c++ почти везде написано, что это оператор. Но ведь это операция?? Или я что то путаю? Или разницы нет? Помогите, я уж совсем запуталась.
C++ Указатель Можете объяснить устройство работы ,мне казалось что если вызвать просто ptr то должен возвратиться адрес,а если * ptr ,то значение,здесь же совершенно все не так int main() { char *ptr="hello world"; cout<<ptr<<endl; cout<<*ptr; getch(); return 0; } http://www.cyberforum.ru/cpp-beginners/thread810537.html
Строковые типы данных C++
Ввести с клавиатуры строку из 20-ти или меньшего числа символов и найти в строке сумму и количество всех цифр. Язык С++(дано: ввод в Edit1 и вывод в Edit2 и Edit3).
C++ Строковые типы данных (заменить все прописные (большие) буквы латинского алфавита строчными (маленькими))
Ввести с клавиатуры строку и заменить все прописные (большие) буквы латинского алфавита строчными (маленькими). Язык С++ (дано Edit1 и вывод в Edit2).
C++ Организовать обход в глубину http://www.cyberforum.ru/cpp-beginners/thread810532.html
Искал код, не смог найти подходящий. Цель следующая - первым обходом ищем все шарниры, а вторым нужно найти для каждого шарнира, на сколько компонент связности дробит граф этот шарнир и сколько в каждой компоненте останется вершин. Было бы вообще великолепно, если бы было возможно реализовать это одним обходом. Поделитесь, пожалуйста, кодом по этому вопросу, или идеями, если есть :)
C++ консольное приложение (при запуске приложение открывалось на весь экран) Как сделать, чтобы при запуске приложение открывалось на весь экран? подробнее

Показать сообщение отдельно
mzarb
-211 / 7 / 1
Регистрация: 14.01.2013
Сообщений: 141
17.03.2013, 10:57  [ТС]     Как выглядит изнутри динамическое выделение объекта через new?
Цитата Сообщение от Kastaneda Посмотреть сообщение
Следует разделять new как key word языка С++ и как void* operator new(std::size_t).
То есть ключевое слово new берет на себя запуск функции оператора void* operator new(std::size_t) и потом запуск конструктора или оно заканчивает свое выполнение на возвращении адреса? И ещё это ключевое слово само делает sizeof для аргумента, который передастся в параметр size_t?
Цитата Сообщение от ValeryS Посмотреть сообщение
и вместо ясной картины еще больше все запутали
А компилятор в этом коде new (placementMemory + i) A(rand()); вернувшийся адрес от new передает сразу как this конструктору или подставляет там где точки A ... (rand()) ? И вообще почему A(rand()) не воспринимается компилятором как вызов функции, но воспринимается как создание объекта без имени? То есть он знает, что нельзя вызвать конструктор напрямую или смотрит по контексту какому-то?
 
Текущее время: 04:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru