Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Разговорник.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
546.82 Кб
Скачать

Предложение отложить решение острого вопроса.

Deferring.

I think that's something we could look at in details later.

Perhaps we could consider that matter a little later.

We will bear it in mind.

We could leave that matter until later on.

I don't think there's any use in going into detail at this moment.

Думаю, что некоторые вещи мы могли бы рассмотреть в деталях позднее.

Возможно, мы могли бы обсудить этот вопрос несколько позднее.

Мы будем иметь это в виду.

Мы могли бы отложить этот вопрос.

He думаю, что полезно сейчас вдаваться в детали.

Проверка точности понимания высказанных позиций.

Checking a point.

Sorry, but can we just go back to what you said earlier?

Correct me if I'm wrong, but what you're proposing is...

Простите, могли бы мы вернуться к тому, что вы сказали ранее?

Поправьте меня, если я ошибаюсь: то, что вы предлагаете — это...?

Подведение итогов дискуссии, высказывание, резюме.

Summarizing.

Maybe we could just run over the main point again.

Can we just stop here a moment and summarize the point so far?

Возможно, мы могли бы повторить основные пункты.

Могли бы мы остановиться здесь и подытожить все сказанное?

Выдвижение предварительных предложений.

Making an initial offer.

Are you prepared to accept... ?

Could I suggest a figure of...

Would your company consider... ?

Would an offer of something in the region of... interest you?

Могу я предложить цифры по... ?

Могла бы ваша компания рассмотреть... ?

Готовы ли вы принять... ?

Были бы какие-то предложения в области... интересны для Вас?

Слова, связанные с it

А

Ability – способность, возможность

Acquire – приобретать

Afterwards – впоследствии, позже

Allow – разрешать, допускать

Although – хотя, если бы даже

Ambiguity – неоднозначность

Amount – количество

Anyway – в любом случае

Appropriate – адаптировать, соответствовать

As already mentioned – как уже упоминалось

Assemble – собирать

Assignment – задание, присвоение

Assumption – предположение

Attachment – присоединение

В

Batch – пакет, комплектовать

Benefit – польза, преимущество

Bind – связывать

Blatant – явный

Blurring – нечеткость, размытие

Boilerplate – шаблон

Bootstrap – загружать

Bottleneck – узкое место

Breakdown – анализ, отказ, крах

Briefly – в двух словах, кратко

Bugbear – проблема

Bundle – пакет

Button – кнопка

С

chapter – глава

class – класс

clause – условие

closure – закрытие

clunky – неуклюжий

column – столбец, колонка

comprehend – постигать

comprehensive – всесторонний

concise – лаконичный

conclude – завершать, заканчиваться

consecutive – подряд, последовательный

constraint – ограничение

correspond – переписывать, соответствовать

credentials – учетные данные

cumbersome – тяжелый, громоздкий

current – текущий, действующий

D

Defence – защита

Definition – определение

Delve into the details – копаться в деталях

Denote – обозначать

Deny – отказывать

Descendant – потомок

Desirable – желательный

E

Elaborate – разрабатывать. конкретизировать

Embodiment – воплощение

Encapsulation – инкапсуляция

Enhancement – улучшение, усиление

Enormous – огромный

Ensure – гарантировать, убеждаться

Eradicate – уничтожать

Especially – особенно, главным образом

Essentially – по сути

Example – пример

Exception – исключение

Excerpt – выборка, извлекать

Execute – выполнять, запускать

Exhaustive – исчерпывающий

Experience – опыт, случай

Explanation – объяснение

Explicitly – явно

F

Feature – характеристика, особенность, функция

Fetch – выборка, извлекать

Fiddle – играть

Field – поле, область

Folder – папка

For simplicity – для простоты

Forbid – запрещать

Forgo – воздерживаться

Fortunately – к счастью

Free – свободный, бесплатный

From the ground up – c нуля

Function – функция

G

Guess – догадаться

Guest – гость

H

Hinder – препятствовать

Hitch – помеха

I

Implement – реализация, внедрение

In alphabetical order – в алфавитном порядке

In particular – в частности

Inclusive – включительно

Indispensable – обязательный

Inheritance – наследование

Integer – целое число

Intervene – вмешиваться

Introduce – представлять

Invocation – просьба, вызов

Issue – проблема, выпуск

L

Layout – макет, разметка

Loop – цикл

M

Maintenance – поддержка

Malicious – вредоносный

Mandatory – обязательный

Mention – упоминание

Middleman – посредник

Misleading – вводить в заблуждение

N

Namespace – пространство имен

Necessary – необходимый

Network – сеть

Newbie – новичок

O

Obsolete – устаревший, редко используемый

Omit – опускать

Overloading – перегрузка

P

Password – пароль

Perform – выполнять

Performance – производительность

Permission – разрешение, полномочия

Persistent – постоянный, стойкий

Pertain – принадлежать

Polymorphism – полиморфизм

Precise – точный, четкий

Predefine – предопределять

Preliminary – предварительный

Prerequisite – предпосылка

Previous – предыдущий

Probably – возможно

Prohibit – запрещать, препятствовать

Property – свойство

Pros and cons – за и против

Purpose – цель

R

Reference – ссылка

Relieve – помогать, освобождать

Request – запрос

Requirement – требование

Reset – сброс

Response – ответ, реакция

Restriction – ограничение

Retrieving – извлечение, восстановление

Revert – возвращаться

Robust – устойчивый

Rudimentary – элементарный

S

Sake – польза

Saving you lots of time and energy –значительная экономия ваших сил и времени

Scheme – схема, план

Selection – выделение, выбор

Separate – отдельный, разделять

Sequentially – последовательно

Settings – настройки

Setup – устанавливать

Sign up – зарегистрироваться

Significant – важный

Simple – простой

Single quotes – одинарные кавычки

Solution – решение

Sparingly – экономно

Strictly speaking – строго говоря

String – строка

Stuff – материал, наполнять

Suffice – удовлетворять, быть достаточным

Switch – переключать

T

Template – шаблон

The crucial part – ключевая роль

The goal is to create a database schema – цель – создать схему данных

Theme – тема

Therefore – поэтому

Thoroughly – тщательно, полно

Thus – следовательно, таким образом

Timestamp – метка времени

Truly – истинно

Tweaking – тонкая настройка

U

Useless – бесполезный

Utilize – использовать

V

Validation – проверка

Variable – переменная

Versatile – многофункциональный, универсальный

Viz. – то есть

Vulnerability – уязвимость

Словарь терминов C++

Term A

Термин

Определение

abstract class

абстрактный класс

Понятие ООП. Класс, который разрабатывается в предположении, что его подклассы дополнят его структуру и поведение, скорее всего, реализовав абстрактные операции. Такие классы не могут иметь экземпляров и потому их можно использовать лишь в качестве базовых для других классов.  Класс, который можно использовать лишь в качестве базового для другого класса. Класс считается абстрактным, если в нем имеется хотя бы одна чисто виртуальная функция.

access control

управление доступом

Механизм, позволяющий запрещать или разрешать доступ к отдельным членам класса. См. public, private, protected и видимость.

access declaration

объявление доступа

Способ управления доступа к отдельному члену базового класса, когда он используется в наследующем классе.

access specifier

спецификатор доступа

Ключевое слово, задающее разрешенные способы доступа к членам класса. См. public, private и protected.

addition operator

оператор сложения

operator +( a, b ) - оператор сложения двух величин. Может быть перегружен для класса (или для двух произвольных пользовательских классов),в связи с чем его семантика не обязательно связана с арифметическим сложением.

 

address

адрес

адрес, обычно имеется в виду адрес объекта в оперативной памяти. Адресная арифметика в языке C++, наследие языка C, является постоянным источником тяжелых ошибок для новичков и профессионалов. 

address-of operator

оператор взятия адреса

символ & перед именем объекта или выражением позволяет получить адрес объекта.

aggregate

агрегат

Массив или объект класса без конструкторов, без защищенных (protected) и закрытых (private) членов, без базового класса и без виртуальных функций.

allocation

выделение (памяти)

Процесс запроса и получения памяти у системы для объекта. См.динамическая память, статическая память.

alignment

выравнивание

параметр размещения объектов в памяти - для ускорения доступа центральным процессором к ячейкам оперативной памяти размер объектов увеличивается (при необходимости) до кратного некоторому числу значения (выравнивание на границу слова - 2 байта, двойного слова - 4 байта, а т.д.)

ambiguity

неоднозначность

возникает в случае, когда компилятор обнаруживает, к примеру, что имя вызываемой функции соответствует нескольким возможным вариантам,выбрать один из которых невозможно на основании имеющихся правил.Обычно такая ситуация возникает, если в разных пространствах имен объявлены функции (или классы) с одинаковым именем, и содержимое этих пространств имен сделано полностью видимым посредством операторов using namespace

ambiguous type conversion

неоднозначное преобразование типа

 

ANSI

 

Аббревиатура: American National Standards Institute (Американский Институт Национальных Стандартов). www.ansi.org Туда – благодарности за стандарт C++.

API

 

Application Program Interface - интерфейс прикладной программы, так обычно называют предоставляемые операционной системой либо какой-либо библиотекой средства (функции, классы) для выполнения действий. Самый простой пример - API MS Windows.

application

приложение

устоявшаяся калька с английского, обозначает программу

application framework

библиотека классов для создания приложений

 

argument

аргумент

Фактические значения параметров при вызове функции.

argument matching

сопоставление аргументов

Процесс определения той из одноименных функций, формальные параметры которой соответствуют набору фактических параметров в месте вызова.

ARM

 

Аббревиатура: стандартное обозначение книжки М.Эллис и Б.Страуструпа «Справочное руководство по языку программирования С++ с комментариями», изд-во Мир, М.: 1992 (Margaret A.Ellis, Bjarne Stroustrup «The C++ Annotated Reference Manual»). Книжка относится к предыдущему, 2-му, стандарту. Тем не менее, все еще представляет интерес не только исторический.

arithmetic

арифметический

 

array

массив

Упорядоченная индексированная последовательность значений. С++ поддерживает как одномерные, так и многомерные массивы.

associative array

ассоциативный массив

 

multidimensional array

многомерный массив

 

arrow operator

оператор "стрелка"

operator->, обращение к элементу класса (данным или методу) при заданном адресе объекта

asm

 

Ключевое слово С++, сообщающее компилятору о том, что вставлены инструкции на ассемблере.

assignment

присваивание

Процесс, в результате которого некоторый объект получает значения. См.конструктор копирования, инициализация.

assembler

ассемблер

 

associativity of operator

ассоциативность операторов

 

ASCII character set

ASCII-символы

стандартный набор символов (7 или 8 битов на символ). См. также UNICODE

assignment operator

инструкция присваивания

Инструкция, выполняющая присваивание. См. конструктор копирования.

asynchronous events

асинхронные события

 

auto

 

Ключевое слово С++, используемое при объявлении локальной переменной, располагаемой на стеке функции. Поскольку подобное объявление является умалчиваемым, оно, как правило, не нужно. См. класс памяти.

Term B

Термин

Определение

backslash

обратный слэш

символ \ (обратная дробная черта)

backspace

символ "шаг назад"

 

base class

базовый класс

класс, которому наследуют все классы иерархии. См. наследование.

base class cast

приведение к базовому классу

 

binding

связывание

 

bit field

битовое поле

член класса, используемый для представления совсем маленьких целых чисел.

bit pattern

набор битов

 

bitwise

побитовый (порязрядный)

 

bitwise copy

побитовое копирование

копирование, при котором не учитывается структура объекта. Является видом легкого копирования (swallow copy), См. почленная копия.

bool

 

ключевое слово, используемое при объявлении булевского типа данных.

body

тело

к примеру, тело функции - все операторы внутри фигурных скобок

break

 

ключевое слово C++, используемое для обозначения инструкции, которая прерывает исполнение циклов for и while, а также используется для отделения вариантов в инструкции switch.

browser

браузер

часть программного обеспечения, используемая для просмотра объявлений классов и их иерархии. См. программное окружение.

buffering

буферизация

обычно - для операций ввода-вывода

built-in

встроенный

имеется в виду поддерживаемый компилятором без каких-либо библиотек

built-in type

встроенный тип

См. основной тип.

Term C

Термин

Определение

C

Си

Широко распространенный язык программирования, обычно применяемый обычно для целей системного программирования (на нем, к примеру, написано ядро ОС Linux). Считается (отчасти справедливо), что С++ является его расширением.

call

вызов

 

call by reference

вызов по ссылке

Передача в функцию указателя на объект. В результате получаем возможность менять значение аргумента внутри функции. См. вызов по значению.

call by value

вызов по значению

Передача в функцию копии аргумента. При этом значение объекта, являющегося аргументом, невозможно изменить изнутри функции. В языках Си и С++ при передаче аргументов в функцию используется вызов по значению. Программист, однако, может смоделировать вызов по ссылке, используя ссылки указатели. См. также вызов по ссылке.

calling conventions

соглашения о вызове

Относится к специфическим для конкретной платформы деталям передачи аргументов в функцию. Например, порядок, в котором они поступают на стек или в регистры процессора.

carriage return

возврат каретки

наследие пишущих машинок, телетайпов и прочей механической периферии - вывод этого "символа" на печать переводит курсор в первую позицию новой строки.

case

вариант

Ключевое слово С++, используемое для выделения отдельной ветви в инструкции switch.

cast

приведение (типа)

Способ указать нужное преобразование типа. См. новый и старый тип приведения.

cast-expression

выражение-приведения

 

catch

перехватить

Ключевое слово С++, используемое для объявления обработчика исключения.

cerr

 

В С++ так обозначается стандартный поток для вывода ошибок.

cfront

 

Вспомогательная программа, транслирующая с С++ в Си. Появилась в середине 80-х гг. в AT&T Bell Labs, когда компиляторы для С++ было еще рано писать.

char

 

Ключевое слово С++, используемое для объявления объекта символьного типа. Часто этот тип отождествляют с байтом, хотя это не всегда верно: символьный тип может быть и многобайтовым (вспомним Unicode).

cin

 

В С++ так обозначается стандартный входной поток.

class

класс

Ключевое слово С++, используемое для объявления основного строительного блока программ. У класса есть имя, члены, механизм управления доступом и т.п.

class hierarchy

иерархия классов

См. базовый класс, производный класс.

class layout

расположение класса

Способ расположения членов класса в объекте класса.

class library

библиотека классов

Совокупность взаимосвязанных классов, объявленных в заголовочном файле и определенных в объектных файлах.

class member

член класса

Составная часть класса, такая, как поле данных, или функция-член, или вложенный класс.

class template

шаблон класса

«Лекало», используемое для генерации типа. В последний стандарт в это понятие внесены настолько сильные изменения, что, по-моему, можно говорить о появлении нового языка.

comments

комментарии

В С++ сохранены комментарии, пришедшие из Си, где начало отмечается парой символов ‘/*’, конец – парой ‘*/’. Имеются и новый стиль: комментарий простирается от пары символов ‘//’ до конца строки.

comma operator

операция запятая

 

compatibility

совместимость

см. также платформонезависимость

compound

составной

 

compilation unit

единица компиляции

См. единица трансляции.

concatenation

конкатенация,объединение

 

const

константный

Ключевое слово С++, используемое для указания на то, что объект остается неизменным. Если оно фигурирует в объявлении, говорят о константном объекте. Если в списке параметров, – о константном параметре.

const_cast

 

Ключевое слово С++, используемое для явной отмены указания на константность объекта.

conditional

условный

 

conditional compilation

условная компиляция

 

conditional expression operator

операция условия ( ? : )  

 

constant

константа

Литерал или переменная, объявленные с ключевым словом const.

constant expression

константное выражение

Выражение в программе на С++, значение которого можно вычислить еще на этапе компиляции. Используется, например, при определении границ массива.

constructor

конструктор

Функция, вызываемая в случае, когда объявление объекта класса попадает в область видимости. Используется для «инициализации» объекта..

container class

контейнерный класс

Тип класса или шаблон, используемый для определения объектов, способных хранить объекты других типов. Стандартные примеры контейнеров: список и стек 

continue

продолжить

Ключевое слово С++, используемое в инструкциях цикла for и while для указания на то, что следует перейти к выполнению следующего витка цикла.

conversion

преобразование

Преобразование от одного типа данных к другому

copy constructor

копирующий конструктор

Специальный тип конструктора, вызываемый при копировании объекта

conversion byconstructor

преобразование с помощью конструктора

если для класса A объявлен конструктор A( B b ), где B - другой тип, то преобразование тип от A к B может выполняться с помощью этого конструктора

cout

 

В С++ используется для обозначения стандартного потока вывода (standard output stream).

C-style string

Си-строка

Так говорят об объектах типа char* и о содержимом памяти, на которую они указывают. В С++ такие строки рекомендуется не использовать. В качестве более чем адекватной замены предлагается тип string из STL.

Term D

Термин

Определение

dangling pointer

висячий указатель

Указатель на несуществующий объект, "время жизни" которого закончилось и который, следовательно, был уничтожен.

data abstraction

абстракция данных

Вполне бессмысленный термин – как подавляющее большинство терминов нынешней теории программирования. Как правило, имеется в виду представление данных через множество операций над ними (и, соответственно, множество значений этих операций), при котором доступ к элементам возможен лишь через совокупность операций. Скажем (простейший пример), абстрактная дата определяется совокупностью операций типа «дата-сегодня», «разность дат» и т.д.

Вполне адекватной заменой является класс в С++.

deallocation

освобождение (памяти)

Процесс возврата (динамической) памяти, ранее запрошенной у системы.

debugger

отладчик

Средство, позволяющее по шагам исполнять программу, исследовать значения переменных, устанавливать точки перехвата и т.д.

declaration

объявление

Конструкция в С++, которая вводит в программу одно или несколько имен.

declaration statement

инструкция объявления

Объявление в виде инструкции (заканчивается символом «точка с запятой»). В С могла появляться только в начале блока; в С++ может появиться всюду, где может появиться инструкция (шизофреническая логичность, на мой взгляд).

declarator

декларатор - собственно объявление

Часть объявления, в которой располагается собственно имя (сиречь, идентификатор). Собственно объявление следует за последовательностью спецификаторов типа и класса памяти.

decrement

декремент

операция уменьшения на 1, обычно связано с оператором -- . См. также инкремент

default argument

аргумент по умолчанию

Аргумент функции, который не обязательно задавать в точке вызова. Если аргумент не задан, используется значение, указанное при объявлении функции.

default constructor

конструктор по умолчанию

конструктор без аргументов, вызывается при создании объектов без явного указания их начального знания

deep copy

глубокое копирование

пример - умные указатели, для некоторый видов которых копирование умного указателя (который обычно хранит адрес объекта) происходит создание копии объекта. 

delete operator

оператор удаления

Ключевое слово С++. Обозначает оператор, используемый для «уничтожения» объектов, т.е. возврата ранее отведенной им (динамической!) памяти.

delete[] operator

оператор удаления массива

Форма оператора delete, используемая для уничтожения массива объектов.

demotion

понижение

Преобразование из одного фундаментального типа данных в другой с возможной потерей точности. Примеры: преобразование от double к int, из long в char.

deprecate

не рекомендуемый

в процессе развития С++ некоторые его свойства оказались малополезными, другие – двусмысленными. Для сохранения совместимости эти устаревшие (obsolete) черты сохранены, но не рекомендуются к использованию.

derived class

выведенный, наследующий, производный класс

класс, члены которого (данные и функции) унаследованы от некоего класса, который называется его предком. См. наследование.

destructor

деструктор

функция, вызываемая в момент, когда объект не нужен более. Она также вызывается автоматически, когда автоматический объект покидает область видимости. Функция освобождает все отведенные ресурсы, скажем, динамическую память.

destruction

уничтожение

уничтожение, в C++ это понятие неразрывно связано с деструкторами.

dialect

диалект

Так говорят о варианте языка программирования. Может также относиться к принятому стилю программирования.

directed acyclic graph

направленный ацикличный граф  

 

do

 

оператор цикла. 

dominance

преобладание

относится к ситуации, когда одно имя предпочтительнее другого.

double

 

ключевое слово C++, которое объявляет тип, предназначенный для представления чисел с плавающей запятой (см. также float).

dynamic storage

динамическая память

память, выделяемая и освобождаемая во время выполнения программы операторами new и delete.

dynamic_cast

dynamic_cast

ключевое слово C++, которое задает способ приведения типа, использующий информацию, доступную во время исполнения. Используя динамическое приведение, можно получить указатель на объект наследующего класса по указателю на базовый класс. Если оказалось, что адресуемый объект не принадлежит указанному наследующему классу, оператор dynamic_cast вернет 0.

dynamically allocated object

динамически размещаемый объект

или просто динамический объект. Создаваемый в ходе работы программы с помощью оператора new. Противопоставляется автоматическим объектам.

Term E

Термин

Определение

EBCDIC character set

множество символов EBCDIC

вряд ли Вы когда-либо встретите его на практике, см. также ASCII

else

ветка ИНАЧЕ

Ключевое слово C++, опциональная (необязательная) часть инструкции if.

embedded system

встроенная система

Программа низкого уровня, для функционирования которой не требуется содействие операционной системы. Используется для управления различными техническими устройствами (микроконтроллеры).

empty argument list

пустой список параметров

 

encapsulation

инкапсуляция

Термин, означающий «упрятывание».

enum

перечисление

Ключевое слово C++, используемое для объявления перечисления.

enumeration

перечисление

Совокупность целых, каждому из которых приписано (осмысленное) имя..

enumerator

элемент перечисления

Один из перечисляемых в операции enum элементов.

equality operator

операция равенства

operator==

exception

исключение

Состояние программы, которое возбуждается (активизируется), когда возникает какая-либо нештатная ситуация..

error handling

обработка ошибок

 

escape character

управляющий символ (\)

 

escape sequence

управляющая последовательность

 

exception handler

обработчик исключения

Участок программы, предназначенный для обработки исключений. См. catch- и try-блок.

exception handling

обработка исключения

Способ передачи управления в то место программы, где было «выражено желание» обрабатывать ситуации данного типа. Ситуации могут возникать или возбуждаться (throw) и перехватываться (catch). Механизм обработки исключений предназначен для обработки нестандартных ситуаций, в частности, ошибок. В процессе обработки производится раскрутка стека.

explicit

явный

Ключевое слово С++, которое используется в объявлении конструктора, чтобы запретить преобразование инициализаторов.

expression

выражение

Конгломерат из констант, переменных, операторов, вызовов функций, задающий способ вычисления значения. Способ определения типа результат часто трудноопределим.

explicit constructor call

явный вызов конструктора

 

expression statement

инструкция-выражение

Инструкция, которая одновременно является и выражением. Примеры: присваивание, вызов функции.

extern

внешний

Ключевое слово, используемое для объявления имени, определенного в другом модуле.

external name

внешнее имя

Имя объекта, определенного в другой единице компиляции программы..

external linkage

внешнее связывание

 

extremal programming

экстремальное программирование

 

Term F

Термин

Определение

false

false

Ключевое слово С++, обозначающее одно из значений булевского типа - ЛОЖЬ. См. true.

finalization

финализация

Термин, используемый для обозначения того, что объект или ресурс не нужен более и что следует запустить процесс очистки памяти.

fixed point arithmetic

арифметика с фиксированной точностью  

float

float

Ключевое слово С++, используемое при объявлении числа с плавающей запятой.

floating point

плавающая запятая

Противоположность целой арифметике. Числа с плавающей запятой принято представлять в виде дробной части по основанию два и экспоненциальной части.

for

for

Ключевое слово С++, используемое в инструкции цикла.

forward class

предварительно объявленный(предваренный)класс

Класс, для которого определено только его имя (tag). Такой класс можно использовать всюду, где не существен размер класса и его члены. Как правило, предваряющее объявление нужно для объявления указателя на класс.

forward declaration

предваряющее объявление

Объявление имени в месте, где несущественным оказывается размер объекта. Как правило, предваряющее объявление нужно для объявления указателя на класс.

free store

свободная память

friend

friend

Объект (как правило, функция), имеющая доступ к защищенным членам класса. Объявление друга размещается внутри класса.

friend class

дружественный класс

 

front end

 

Мне не удалось найти подходящий перевод. Сам термин относится к ранним стадиям компиляции С++, таким, как грамматический разбор и семантический анализ. Хочу подчеркнуть, что С++ всегда был труден для компиляции и, особенно, в последней версии, не соответствует столь любимой специалистами LL(1) технике.

function

функция

Объект С++, являющийся последовательностью инструкций. Имеет собственную область видимости, принимает аргументы и может возвращать значение по завершении.

function object

функциональный объект

объект, с которым можно обращаться как с функцией, то есть реализует синтаксис и семантику вызова функции с аргументами. Объект класса может быть функциональным объектом, если у класса перегрузить функции operator()

function template

шаблон функции

Шаблон, используемый для генерации функций, реализующих один и тот же алгоритм над разными типами данных.

fundamental type

основной тип

Тип, встроенный в С++. Таковы все целые типы (int, char и т.д)

Term G

Термин

Определение

garbage collection

сборка мусора

Один из механизмов, часто встраиваемых в механизм управления динамической памятью. Борьба идет за отмену явного освобождения занимаемой памяти, что является неистощимым источником ошибок. Отсутствует в нынешней версии С++. См. инструкции new и delete.

generic

обобщенный

Используется, в словосочетаниях типа generic programming. В С++ означает использование шаблонов при реализации алгоритмов – при этом их аргументы задаются как параметризованные типы, чем, собственно и достигается обобщенность.

generic programming

обобщенное программирование

.

global name

глобальное имя

Имя, объявленное в глобальной области видимости.

global namespace

глобальное пространство имен

Неявное пространство имен, в котором располагаются глобальные переменные.К сожалению, мне не удалось избавиться от порочного круга в этом определении.

global scope

глобальная область видимости

global variable

глобальная переменная

Переменная, доступная в любом месте программы. Время ее жизни – от запуска программы до ее завершения.

goto

goto

Ключевое слово С++, обозначающее инструкцию, передающее управление внутри функции. См. метка. Использование оператора goto - признак высшего мастерства и опытности программиста, ибо в неопытных руках вызывает массу проблем, включая трудности отслеживания времени жизни объектов.

grammar

грамматика

Способ задания языка, как правило, формального.

greater than operator

операция больше чем

operator >

greater than or equal operator

операция больше или равно

operator >=

Term H

Термин

Определение

header

заголовок, хидер

handle class

управляющий класс

 

header file

заголовочный файл

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

heap

хип; куча

helper class

вспомогательный класс

Класс, используемый как часть при реализации другого класса. Как правило, входит в этот другой класс.

hexadecimal constant

шестнадцатеричная константа

имеет вид 0xF000AA5

hiding

упрятывание

Term I

Термин

Определение

identifier

идентификатор

 

if

если

Ключевое слово C++, используемое в условных инструкциях.

implementation dependent behavior

поведение, зависящее от реализации

Не все аспекты сложных языков программирования (таких, как С++) могут и должны быть определены в стандарте. Этим термином определяют те детали языка, которые могут быть разными в разных реализациях – компиляторов и/или стандартных библиотек, и/или операционного окружения.

implementation

реализация

 

implicit conversion

неявное преобразование

Преобразование, выполняемое как часть некой операции. Пример: преобразование указателя к типу bool в условной инструкции if.

increment

увеличение

Префиксный или постфиксный оператор ++.

information hiding

сокрытие информации

Разделение открытого интерфейса и скрытой реализации.

indentation

выделение пробелами

 

inheritance

наследование

Процесс, в результате которого наследующий класс «приобретает» члены из своего базового класса. Конечно, наследующий класс что-нибудь добавит к наследству.

initialization

инициализация

Процесс, в результате которого объект оказывается инициализированным.

initialize

инициализировать

Задать начальное значения.

initializer

инициализатор

Значение или выражение, используемое для инициализации объекта.

inline

 

Ключевое слово C++, используемое для объявления встроенной функции. Применяется для указания компилятору попробовать подставить реализацию функции (похоже на макрос), вместо вызова функции.

inline function

встраиваемая функция

Функция, тело которой компилятор может подставить в точку вызова. При этом сохраняется время, затрачиваемое на вызов функции, но расходуется память на ее тело. Рекомендуется объявлять таким образом лишь совсем простые функции (например, без циклов).

instantiation

конкретизация

Конкретизация шаблона функции – подстановка фиксированных типов в шаблон. Аналогично с конкретизацией класса.

int

 

Ключевое слово С++, используемое для объявления объекта целого типа.

integral conversion

целое преобразование

Процесс преобразования целого в знаковое (signed) или беззнаковое (unsigned). 

integral promotion

целое расширение

Процесс, в результате которого типы bool, char или short, а также перечисление или битовое поле, преобразуются в целое типа int. Используется при вычислении выражений, передаче аргументов и т.д.

interface

интерфейс

 

iterator

итератор

Обобщение понятия указателя. Широко используется в STL для манипуляций с группами объектов.

Term K

Термин

Определение

keyword

ключевое слово

Зарезервированный идентификатор, используемый в С++ в некотором фиксированном смысле – для обозначения типов данных, представления инструкций и т.д.

Term M

Термин

Определение

macro

макро

Свойство препроцессора, позволяющее использовать подстановку параметров и раскрывать часто используемые коды.

mangling

декорирование

member

член

member function

функция-член

Функция, которая является элементом класса и которая оперирует с объектами этого класса, адресуясь через указатель this.

memberwise copy

почленное копирование

Копирование, при котором учитывается структура объекта, когда копируется по члену объекта за раз. При этом, как правило, используется копирующий конструктор.

memory leak

утечка памяти

Потеря доступа к динамической памяти (путем потери значения указателя на нее) без ее возвращения системе.

method

метод

См. функция-член.

mixed mode arithmetic

смешанная арифметика

Так говорят про выражения, в которых смешаны операции как над целыми, так и над действительными числами.

module

модуль

multiple inheritance

множественное наследование

Используется для построения класса, наследующего сразу нескольким базовым классам.

mutable

mutable

Ключевое слово С++, сообщающее, что член не является константным, даже если весь объект константен.

multidimensional array

многомерный массив

 

multiplication operator

операция умножения

operator*(x,y)

multimethod

мультиметод

Обобщение понятий виртуальной функции и статической перегрузки функций.Мультиметод - это механизм, позволяющий выбрать одну из нескольких функций в зависимости от динамических типов аргументов. Таким образом, в отличие от обычных виртуальных функций выбор осуществляется с учетом не одного типа объекта, а нескольких. А в отличие от статической перегрузки функций выбор осуществляется на основе информации о динамических типах аргументов.

Term N

Термин

Определение

name

имя

Идентификатор, обозначающий объект, функцию, множество перегруженных функций, тип, перечисление, член, шаблон, пространство имен, метку.

name lookup

разрешение имени

Относится к процессу выбора объекта, обозначающего данным именем. При этом принимаются во внимание все правила C++.

name mangling

декорирование имени

Используется для записи внешнего имени перегруженной функции. Нужен для выбора имени в зависимости от типов параметров.

name space

пространство имен

Некая совокупность имен, может быть, именованная.

namespace

namespace

Ключевое слово C++, используемое для объявления пространства имен – функций, классов и т.д.

namespace alias

псевдоним пространства имен

Как правило, имена пространств имен получаются слишком длинными – ведь в них стараются отразить происхождение используемых кодов. Есть возможность вводить их сокращенные имена, которые и называют псевдонимами.

namespace member

член пространства имен

Элемент пространства имен, например, функция, объявление класса или typedef.

nested class

вложенный класс

Объявление класса, вложенное в другой класс.

new handler

обработчик new

Функция, задаваемая аргументом при вызове set_new_handler. Она вызывается в случае, когда оператор new не может получить запрошенную динамическую память.

new operator

оператор new

Ключевое слово С++ и оператор, используемый для выделения динамической памяти.

new style cast

новый стиль приведения типа

Приведение типа: новый стиль состоит в использовании функциональной нотации.

new[] operator

оператор new[]

Оператор new, форма применения для выделения памяти под массивы объектов.

NULL

NULL

Специальная константа, которая представляет собой несуществующий адрес. Как правило, значением константы является нуль.

null pointer

нулевой указатель

Указатель, значение которого равно специальной константе NULL, представляющей несуществующий адрес.

Term O

Термин

Определение

object

объект

У этого термина очень много значений. В С++ часто обозначает экземпляр класса. Кроме того, тесно связан с любым именованным объявлением переменной или любой другой сущности (вот где уместен термин “объект”), под которую отводится память.

object file

объектный файл

Как правило, результат работы компилятора. Такой файл состоит из машинных инструкций, а также из списка внешних имен, разрешаемых редактором связей (линкером).

object layout

расположение объекта

Обозначает порядок членов данных внутри класса.

object oriented

объектно ориентированный

В последнее время этот термин почему-то связывают с наследованием и виртуальными функциями..

old style cast

старый стиль приведения

Явное приведение типа, синтаксис которого унаследован из языка Си: имя типа в скобках перед приводимым значением.

OOP

ООП

Объектно-ориентированное программирование.

operator

оператор

Встроенная операция языка, такая, как сложение. Также перегруженная операция, задаваемая функцией-членом класса..

operator overloading

перегрузка операторов

Средства языка, позволяющие трактовать операторы как функции и, значит, перегружать их для конкретных типов параметров. Пример: операция << перегружена и обозначает, как правило, вывод.

operator precedence

приоритет операций

 

order of argument evaluation

порядок вычисления параметров

 

overload

перегрузка

Способ задать несколько функций с одним именем, различающихся числом и типами параметров. Предполагается, что перегрузка очень удобна, когда нужно определить одну и ту же операцию над разными типами. Примеры перегруженных операций над встроенными типами: сложение и умножение.

overload resolution

разрешение перегрузки

overloading

перегрузка

Использование одного и того же имени для функций с разной сигнатурой (набором параметров). В некоторых текстах используется словосочетание “совместное использование”.

Term P

Термин

Определение

pair

пара

В стандартной библиотеке C++ - шаблонная структура std::pair, хранящая два объекта произвольного типа (типы задаются как параметры шаблона).Используется очень широко, к примеру - точка на плоскости это пара координат (целых чисел или действительных). Является частным случаем понятия tuple.

parameter

параметр

Относится к переменной, передаваемой в функцию..

parameterized type

параметризованный тип

parser

парсер

Программа, осуществляющая грамматический разбор.

parsing

грамматический разбор

Процесс, в результате которого программа, написанная на некотором языке программирования, оказывается разбитой на синтаксические элементы.

placement

размещение

Возможность определить версию оператора new с дополнительным аргументом, задающим нужный тип памяти.

pointer

указатель

Объект, предназначенный для действий с адресами объектов. Является частным случаем итератора.

pointer to data member

указатель на член данных

Указатель, адресующий член данных класса.

pointer to function

указатель на функцию

Указатель, адресующий функцию или функцию-член.

pointer arithmetic

адресная арифметика

арифметические операции с указателями (см. адрес), в C++ это сложение, вычитание, инкремент и декремент

pointer to member

указатель на член

.

polymorphism

полиморфизм

Свойство языка, позволяющее единообразно вызывать функцию-член нужного класса, используя указатель или ссылку на базовый класс..

portability

портабельность,платформонезависимость

 

postfix

постфиксный

Относится к выражениям, в которых знак операции следует за операндом.

pragma

прагма

Директива препроцессора, используемая для изменения стандартного поведения компилятора. Естественно, набор прагм разных компиляторов различен.

predefined

предопределенный

Объект, объявление которого предшествует его определению.

prefix

префиксный

Относится к выражениям, в которых знак операции предшествует операнду.

Term Q

Термин

Определение

qualification

квалификация

Так говорят, когда перед именем объекта ставят имя класса или пространства имен.

qualifier

квалификатор

queue

очередь

 

quote

кавычка

 

Term R

Термин

Определение

range checking

контроль диапазона

 

recursion

рекурсия

 

recursive descent parser

рекурсивный спуск

Тип грамматического разбора, рекомендуемый для компиляторов С++. Он оказывается более гибким, чем старомодный подход, реализованный в Yacc.

reference

ссылка

Еще одно имя объекта. Доступ к объекту через ссылку ничем не отличается от манипуляций с самим объектом. Как правило, реализация ссылок основывается на указателях; ссылка – понятие языковое, грамматическое, а не понятие времени исполнения.

register

register

Ключевое слово C++, которое советует компилятору расположить некую локальную переменную в машинном регистре.

reinterpret_cast

reinterpret_cast

Ключевое слово C++, используемое для указания на приведение, которое может оказаться небезопасным и зависящим от реализации.

repository

хранилище

Место, где можно сохранить конкретизированный шаблон.

resolution

разрешение

resolution

отождествление; разрешение

При работе с перегруженными функциями процесс подбора подходящей из множества перегруженных функций. Конечно, ошибка, если процесс не заканчивается однозначным выбором.

resumption

возобновление

Стиль обработки исключений, согласно которому исполнение программы возобновляется с той точки, в которой было возбуждено исключение. В С++ используется завершение.

return

return

Ключевое слово C++, обозначающее инструкцию выхода из функции и, быть может, возврата значения.

return value

возвращаемое значение

Значение, возвращаемое в точку вызова по завершении исполнения функции.

RTTI

RTTI

Аббревиатура: Run Time Type Identification (идентификация типа объекта во время выполнения).

run time type identification

идентификация типа объекта во время выполнения

Возможность узнать тип объекта во время исполнения программы.

run-time

время выполнения

Относится к действиям, которые происходят от момента запуска до момента остановки программы.

run-time efficiency

эффективность исполнения

Адепты С++ утверждают, что за неиспользуемые возможности языка «платить» не приходится. Когда говорят об эффективности исполнения, имеют в виду эту самую отсутствующую плату за использование С++.

run-time type information

информация о типе времени исполнения

Встраиваемые в программу коды, позволяющие узнать тип объекта во время исполнения программы.

rvalue

r-значение

Значение, которое разрешается употреблять в правой части инструкции присваивания.

re-throw

повторная генерация особой ситуации

 

Term S

Термин

Определение

scope

область видимости

Часть программы, где имя “известно”.

semantic analysis

семантический анализ

Стадия компиляции, следующая за грамматическим разбором. Предполагается, что на этой стадии анализируется смысл программы. К сожалению, смысл термина «смысл» во многом остается на совести разработчика компилятора.

semantics

семантика

Смысл программы, что бы ни означал этот термин. Иногда объявляется антонимом термина «синтаксис».

sentinel

страж

Вспомогательный элемент (списка, буфера и т.д.), используемый в условиях прекращения цикла. Наиболее известный страж – символ '\0' в строках.

separate compilation

раздельная компиляция

Каждая единица компиляции обрабатывается отдельно, в результате получается совокупность объектных файлов, которые затем редактор связей объединяет в исполнимую программу.

set_new_handler

 

Функция, используемая для установки обработчика new.

short

 

Ключевое слово C++, используемое для объявления коротких целых. Реальный размер целых чисел зависит от реализации. Стандарт гарантирует лишь, что sizeof(short) <= sizeof(int).

signed

 

Ключевое слово C++, сообщающее, что объявляется целое, которое может быть и отрицательным.

singleton

 

Это объект, который может быть только в единственном числе в программе, к примеру - объект для работы с клавиатурой, или объект для записи отладочного журнала.

sizeof

 

Ключевое слово C++, обозначающее функцию, которая позволяет узнать размер объекта или типа в байтах (char).

smart pointer

Интеллектуальный (или умный) указатель

Объект, который ведет себя как указатель, но, при этом, выполняет некую обработку, когда к объекту получают доступ через него.

specialization

специализация

Вариант шаблона, определенный для некоего специального типа аргументов

stack frame

кадр стека

Область в машинном стеке, используемая функцией в качестве локальной памяти (например, для локальных переменных). Следующему вызову функции соответствует новый кадр.

stack unwinding

раскрутка стека

Этот процесс неразрывно связан с обработкой исключений (операторы try-catch). Когда возбуждается исключение, кадры стека придется удалять до тех пор, пока не будет найден обработчик исключения. Этот процесс включает в себя вызов деструкторов для локальных объектов кадра и многое другое, чтобы гарантировать нормальную семантику конструкций C++, например при возникновении исключений внутри блока с группой автоматических объектов на стеке.

standard conversion

стандартное преобразование

Относится к совокупности стандартных преобразований типов, например, целых в целые.

standard library

стандартная библиотека

Кроме многого из стандартных библиотек Си в стандартную библиотеку С++ включены и совсем новые возможности, например, поддержка строк и контейнеров.

statement

инструкция

Слово statement обычно переводят на русский термином "оператор". Таким образом, мы и привыкли, что if, while, case и т.п. – это операторы. К сожалению, в С++ этот перевод приводит к трудностям, поскольку имеется термин operator - словом "оператор" естественно было бы переводить его. Из возможных и встречавшихся в русской литературе переводов statement (утверждение, предложение, инструкция) в переводе книжки Струструпа, посвященной третьему стандарту С++, принят термин "инструкция".

static

статический

Ключевое слово С++.

static member

статический член

Член класса, который включен в класс только для ограничения доступа к нему, но который не оперирует с отдельными объектами, являющимися экземплярами класса.

static object

статический объект

Объект, локальный в функции или единице трансляции, время жизни которого то же, что и у программы.

static storage

статическая память

Область памяти, неменяющаяся в течение времени жизни программы.

static type checking

статическая проверка типов

Проверка типов, производимая во время компиляции программы, не во время ее исполнения.

static_cast

 

Ключевое слово C++, характеризующее стиль приведения типов. Должен служить заменой старого стиля приведения, унаследованного из Си.

storage class

класс памяти

stream

поток

Объект, используемый как абстракция канала ввода или вывода..

stream I/O

поток ввода-вывода

В библиотеке ввода-вывода С++ используются перегруженные операторы << и >>. Утверждается, что они более безопасны по типам, чем то, что предлагают стандартные библиотеки Си.

string

строка

struct

структура

Почти то же, что и класс. Отличие в том, что по умолчанию все члены имеют атрибут public.

switch

 

Ключевое слово C++, обозначающее инструкцию, которая позволяет выбрать одну из ветвей в зависимости от значения выражения.

symbol table

таблица символов

Область данных компилятора, используемая для хранения информации об именах программы.

syntax

синтаксис

Совокупность правил построения выражений, инструкций, объявлений и прочих частей программы.

systems programming

системное программирование

Как правило, имеется в виду низкоуровневое программирование. Пример: драйверы ввода-вывода, операционные системы. Считается, что как Си, так и С++ подходят для этих задач.

swallow copy

легкая копия

простейший пример - копирование указателей; при этом копируется адрес объекта, а сам объект не копируется. Другой вид копирования - deep copy (глубокая копия)

Term T

Термин

Определение

tag

тег

Имя, присваиваемое классу, структуре или объединению.

template

шаблон

Параметризованный тип. Шаблон позволяет сгенерировать нужный тип – в зависимости от значения аргумента.

template argument

аргумент шаблона

Фактическое значение или тип, задаваемые, когда по шаблону требуется построить реальный класс.

template class

шаблон класса,шаблонный класс

Шаблон с аргументами, конкретизация которого дает класс.

template declaration

объявление шаблона

Объявление шаблона с соответствующим списком параметром.

template definition

определение шаблона

Собственно определение шаблона или одного из его компонентов.

template instantiation

конкретизация шаблона

Процесс подстановки аргументов шаблона, в результате которого получается определение конкретного класса.

template parameter

параметр шаблона

Значение или тип, объявленный входным параметром шаблона.

temporary

временный

Неименованный объект, используемый при вычислении значения выражения для хранения промежуточных значений.

termination

завершение

Стиль обработки исключения, при котором управление не возвращается в точку, где исключение было возбуждено. Именно этот стиль используется в С++.

this

 

Ключевое слово С++, используемое в функциях-членах, когда нужен адрес текущего объекта.

throw

 

Ключевое слово С++, используемое для генерации исключения.

translation limit

ограничение величины единицы трансляции

Ограничение на величину модуля исходного текста, допускаемого компилятором.

translation unit

единица трансляции

Файл с исходным текстом, результатом компиляции которого должен стать объектный файл.

true

истина

Ключевое слово С++, обозначающее одно из значений булевского типа..

try

 

Ключевое слово С++, начинающее блок try.

try block

блок try

Инструкция, устанавливающая контекст обработки исключения. Возбуждение исключения в самом этом блоке или в вызываемой в нем функции, “ловится” обработчиком, связанным с текущим блоком try или обработчиком, лежащим выше в цепи.

tuple

кортеж

В математике это конечная последовательность произвольных объектов 

В C++: статический контейнер, хранящий несколько величин произвольных типов. Типы хранимых значений задаются как параметры шаблона. Частный случай - пара (тип std::pair), реализация которого есть в стандартной библиотеке C

type

тип

Свойство имени, которое определяет способ его использования. Например, объект типа какого-нибудь класса нельзя присваивать целой переменной.

type checking

проверка типа

type conversion

преобразование типа

Преобразование значение из одного типа в другой, например, с помощью конструктора.

type safe linkage

связывание, безопасное по типам

Относится к процессу кодирования информации о типах параметров в внешних именах. Информацию использует редактор связей, который отвергнет несоответствие между определениями и вызовами функций.

type safety

безопасность типов

type system

система типов

Система типов и операций над объектами этих типов. Проверка типа позволяет убедиться в том, что затребованная операция над данными типами допустима. Скажем, функцию необходимо вызывать с аргументами подходящих типов.

typedef

 

Ключевое слово C++, используемое для определения псевдонима некоего типа.

typeid

 

Оператор, возвращающий объект, описывающий тип операнда.

Term U

Термин

Определение

UNICODE

юникод

стандарт представления символов, предоставляющий возможность работать с огромным набором символов одновременно (сравни с ASCII, где возможно использовать 256 кодов символов).

utf-8

 

стандарт представления UNICODE-символов в виде последовательностей байтов

utf-16

 

стандарт представления UNICODE-символов в виде последовательностей 16-битовых слов

union

union

Структура, аналогичная классу и “обычной” структуре, которая отличается от них тем, что ее члены размещаются в одной и той же памяти.

unsigned

unsigned

Ключевое слово C++, используемое для объявления целого беззнакового встроенного типа.

unwinding

раскрутка

user-defined conversion

пользовательское преобразование

Функция-член, которая поддерживает преобразование объекта в любой другой тип.

user-defined type

пользовательский тип

Класс или typedef.

using declaration

объявление using

Объявление, которое делает класс или имена пространства имен видимыми в «чужой» области видимости.

using directive

директива using

Способ сделать член пространства имен видимым в программе.

Term V

Термин

Определение

variable

переменная

Объект, значение которого может стать значением другого объекта.

vector

вектор

Одномерный массив.

virtual

virtual

Ключевое слово С++, объявляющее виртуальную функцию.

virtual base class

виртуальный базовый класс

Базовый класс, устроенный так, что его единственный подобъект разделяется каждым наследующим классом, объявляющим базовый класс виртуальным.

virtual function

виртуальная функция

Функция-член, интерпретация которой зависит от типа объекта, “от которого” она вызвана. Функция объекта наследующего класса, которая перекрывает аналогичную функцию базового класса.

virtual table

виртуальная таблица

Таблица, используемая для управления вызовами виртуальных функций. Объект класса, содержащего виртуальные функции, работает с указателями “внутрь” виртуальной таблицы.

visibility

видимость

Относится к поиску имен. К видимому имени можно применять управление доступом и проверку типов.

void

void

Ключевое слово C++, используемое для объявления чего-либо, не обладающего типом. Имеет специальные значения, например, объявляет функцию с пустым списком параметров. См. еще void*.

void*

void*

Указатель на тип void. Как правило, в Си и С++ используется при приведении указателей, как тип низшего уровня.

Volatile

volatile

Спецификатор типа говорит компилятору о том, что объект может измениться в заранее неизвестный момент времени, асинхронно с последовательно исполняемыми операторами и потому его следует исключить из оптимизации.

Term W

Термин

Определение

white space

обобщенный пробел

 

wchar_t

wchar_t

Ключевое слово C++, объявляющее основной тип, в котором хранятся «широкие» символы.

wide-character string

строка символов типаwchar_t

 

while

while

Ключевое слово C++, обозначающее инструкцию цикла.