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

Динамическая память new, delete - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не могу понять ошибку http://www.cyberforum.ru/cpp-beginners/thread1224835.html
По задумке надо удалить два идущих подряд одинаковых слова. Задумка не выходит, выдаёт бурду... HELP ME!( #include "stdafx.h" #include <iostream> #include <fstream> #include <iomanip> #include <stdio.h> #include <Windows.h> #include <string>
C++ Unsigned Short - Как из 27015 получить 0x69 и 0x87 Ребята, прошу помощи. В доукментации стима написано: Unsigned Short Port number - usually 27015 (69 87) - this is network ordered, which is unlike every other Steam protocol. Query Protocol Но я понятия не иммею, как из 27015 получить 0x69 и 0x87, кто знает подскажите пожалуйста http://www.cyberforum.ru/cpp-beginners/thread1224833.html
Объект класса в динамической памяти C++
Привет. Вот листинг: #include <iostream> using namespace std; class SimpleCat { public: SimpleCat(int age, int weight) { cout << "SimpleCat Constructor..." << endl;
Перевести с Pascal на C++. Вычисление суммы (произведения) конечного ряда. C++
Программа вычисления суммы (произведения) конечного ряда. При разработке программы предусмотреть пропуск слагаемых (множителей), равных нулю или бесконечности. P/S Значение k ввести с клавиатуры var s, z, f: real; i, k: integer; begin s := 0; write('k=');
C++ Функция возведения в степень. http://www.cyberforum.ru/cpp-beginners/thread1224768.html
написал библиотеку для вычисления степени чисел.некорректно работает при возвращении переменной из step.h в main.cpp и переводе в другую. step.h:#include <cmath> int result; int step(int choise, int step) { for(int i = 0; i < step; i++){ result *= choise; }
C++ Двумерный массив, поиск локального минимума - доработать код Написал следующий код, вроде запускается и работает только не всегда корректно считает. Задача в следующем найти локальные минимумы ( если элемент строго меньше его соседей ). Здесь еще надо учесть тот момент что элемент может стоять на границе и можно выйти за пределы массива но я это учел. #include <iostream> #include <ctime> #include <conio.h> using namespace std; bool check_border... подробнее

Показать сообщение отдельно
Renji
1753 / 1180 / 275
Регистрация: 05.06.2014
Сообщений: 3,399
09.07.2014, 11:18     Динамическая память new, delete
А вектор это относится к STL библиотеке?
Да.
А для чего же тогда нужны new \delete, malloc\free? И как ими пользоватся?
Для того чтобы руками рулить стратегией выделения памяти.
malloc - выделить кусок памяти.
realloc - изменить размер куска памяти.
free - освободить кусок памяти.
new - выделить кусок памяти под объект, вызвать конструктор объекта (размер куска потом менять вроде как нельзя).
delete - вызвать деструктор объекта, освободить кусок памяти.

std::vector - выделяет память. Освобождает ее только на смертном одре (когда вы выйдете из секции в которой вектор объявили). Когда вы вызываете clear вектор ничего не освобождает, а просто помечает захапанную память как личный резерв. Ну вдруг потом опять понадобится? Лечится это только регулярным ударом shrink_to_fit по голове.
 
Текущее время: 21:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru