Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65061
Модуль Forms 64836
Пример работы с... 63241
ТЕХНОЛОГИИ ДОСТ... 61550
Имитационное мо... 57390
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,081
новичок: Abdukarimov A
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Метод половинного деления для нахождения корня уровнения на Turbo Pascal...
Моделирование интернет магазина (Apache, Php, Html) на GPSS + Блок схема
Программа тестирования и обучающая программа по математике на Turbo Pasc...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Функция-фильтр «умного» массива
Поэтому общепринятым способом является передача контейнера по константной ссылке — это в любом случае гарантирует отсутствие накладных расходов на память и время.

Листинг 5.19. Функция-фильтр «умного» массива
typedef ТАггау::Uint uint;
ТАггау аггау(ТАггау source, double L, double R) { uint count = 0;
for(uint i = 0; i < source.size(); ++i)
if ((L<=source[i])&&(source[i]<=R)) ++count;
TArray result(count);
for(uint i = 0, j = 0; i < source.size(); ++i) if ((L<=source[i])&&(source[i]<=R)) { result[j]=source[i]; ++j; }
return result;
}

// для краткости
// количество элементов
// считаем
// массив-результат

// копируем
// возвращаем массив




Функция сначала считает количество элементов исходного массива, попадающих в заданный диапазон. Затем создается локальный массив требуемого размера и заполняется нужными значениями. Полученный массив возвращается в качестве результата.
Наш массив реализован только для элементов типа double, что является довольно жестким ограничением. В следующей главе мы поговорим о том, как создать более универсальную динамическую структуру.

Резюме
Память в С++ измеряется байтами. Операция sizeof (char) выдает результат, равный 1. Объекты С++ размещаются в трех видах памяти: статической, автоматической и динамической. Вид памяти фактически определяет и время жизни объекта. Для размещения одиночных объектов в динамической памяти используется операция new, для уничтожения — операция delete. Динамические массивы создаются операцией new[], уничтожаются операцией delete[]. При создании динамического массива количество элементов можно задать выражением, вычисляемым во время выполнения. Однако для многомерных динамических массивов разрешается задавать вычисляемое выражение только для самого левого измерения — остальные должны быть заданы константами. Размеры выделяемой динамической памяти зависят от реализации.
Опубликовал Kest November 03 2013 20:36:26 · 0 Комментариев · 2212 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Базы данных в Инт...
Assembler. Практикум
Развивающийся фла...
GamesBase 3.0
Карта сайта
DragMe [Исходник ...
Пример работы с ф...
Info
Delphi 7: Для про...
PBEditPack
Swat [Исходник на...
PDF
Indy in Depth Глу...
Flud Vkontakte.ru
De Knop
Основы Delphi. Пр...
Blib [Исходник на...
WinAmp
C++ Builder 6 СПР...
начисление процен...

Топ загрузок
Приложение Клие... 100466
Delphi 7 Enterp... 86618
Converter AMR<-... 20077
GPSS World Stud... 12637
Borland C++Buil... 11753
Borland Delphi ... 8555
Turbo Pascal fo... 7037
Visual Studio 2... 4998
Калькулятор [Ис... 4760
FreeSMS v1.3.1 3541
Случайные статьи
Обновленные источн...
Операторы цикла
Особенности постро...
Обработка исключит...
Классы
BEGIN expected
Варианты заданий
Что может сделать ...
Выполнение лаборат...
ИНФОРМАЦИОННАЯ БЕЗ...
Полиморфизм
чтения смарт-карт,...
Сайты компаний
Procedure or funct...
Как фильтруется и ...
Съемка Canon по ос...
Зачем нужно исчисл...
Как изменить полож...
ПОКРЫВАЮЩИЕ ИНДЕКСЫ
Основные классы Ba...
Регистрация ActiveX
MARK (ОТМЕТИТЬ)
Конфигурирование в...
Проблемы внедрения
Предварительная по...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?