Перечень сообщений
Перечень сообщений
')' missing in macro invocation in command команда
Фатальная ошибка утилиты MAKE
(в вызове макрокоманды в команде команда пропущена ')')
В вызове макрокоманды требуется левая скобка.
) expected
Сообщение об ошибке этапа компиляции
(требуется ))
В конце списка параметров ожидается правая круглая скобка.
( expected
Сообщение об ошибке этапа компиляции
(требуется ()
Перед списком параметров ожидается левая круглая скобка.
, expected
Сообщение об ошибке этапа компиляции
(требуется ,)
В списке объявлений, инициализации или параметров ожидается запятая.
: expected alter private/protected/publlc
Сообщение об ошибке этапа компиляции
(требуется : после private/protected/public)
При использовании резервированных слов private/ protected/public для того, чтобы начать соответствующий раздел класса С++, за ними должно следовать двоеточие.
< expected
Сообщение об ошибке этапа компиляции
(требуется <)
За < не следует ключевое слово template. Каждое описание
шаблона должно включать в себя формальные параметры шаблона, заключенные в <>, за которыми непосредственно следует ключевое слово template.
@ seen, expecten a response-files name
Ошибка TLIB
(обнаружено @, предполагается имя командного файла)
Непосредственно после @ не задан командный файл утилиты.
{ expected
Сообщение об ошибке этапа компиляции
(требуется {)
В качестве начала блока или инициализации ожидается левая
фигурная скобка.
} expected
Сообщение об ошибке этапа компиляции
(требуется })
В конце блока или инициализации ожидается правая фигурная
скобка.
16-bit segments not supported in module модуль
Сообщение компоновщика об ошибке
(16-разрядные сегменты в данном модуле не поддерживаются)
16-разрядные сегменте не поддерживаются в 32-разрядных приложениях. Возможно вы компилируете свое 32-разрядное приложение
16-разрядным компилятором.
286/287 instructions not enabled
Cообщение об ошибке этапа компиляции
(Команды 286/287 не разрешены)
Чтобы разрешить использование команд 286/287, используйте
параметр командной строки компилятора -2 или параметр 80286 диалогового окна Options Compiler Code Generation (Параметры Компилятор Генерация кода). Учтите, что полученный при этом код не может использоваться на машинах с процессорами 8086 или 8088.
32-record encountered
Сообщение об ошибке утилиты TLINK
(обнаружена 32-разрядная запись)
Обнаружен объектный файл, содержащий 32-битовые записи
80386, а параметр /3 не используется.
- A -
Abnormal program termination
Сообщение об ошибке этапа выполнения
(аварийное завершение программы)
Данное сообщение может выводиться, если для выполнения программы не может быть выделено достаточного количества памяти. Вызов Abort также приводит к появлению данного сообщения.
Access can only be changed to public or protected
Сообщение об ошибке этапа компиляции
(тип доступа может быть изменен только на public или
protected)
Производный класс С++ может модифицировать права доступа
члена базового класса, но только на public или protected. Элемент
базового класса нельзя сделать private.
Added file имя_файла does not begin correctly, ignored
Предупреждение утилиты TLIB
(некорректно начинается добавляемый файл имя_файла, поэтому
он игнорируется)
Библиотекарь определил, что форма добавляемого к объектному
файлу модуля некорректна, поэтому он не пытается добавить его к
библиотеке. Библиотека тем не менее создается.
Address of overloaded function функция doesn't match тип
Сообщение об ошибке этапа компиляции
(адрес переопределяемой функции не соответствует типу)
Переменной или параметру присваивается адрес переопределяемой функции (или выполняется инициализация переменной с использованием данного адреса), а тип переменной или параметра не совпадает с типом переопределяемой функции с заданным именем.
модуль isAlready in LIB, not changed
Предупреждение утилиты TLIB
(модуль уже находится в библиотеке и не изменятся)
Для библиотеки была попытка выполнить действие +. но объект
с таким именем уже есть в библиотеке. Если требуется обновление
модуля, то действием должно быть +-. Библиотека не модифицируется.
Ambiquity between функция_1And функция_2
Сообщение об ошибке этапа компиляции
(неоднозначность между функцией_1 и функцией_2)
С переданными параметрами могут использоваться обе названные
переопределенные функции. Такая неоднозначность недопустима.
Ambiguous member name имя
Сообщение об ошибке этапа компиляции
(неоднозначное имя элемента)
Элемент структуры имя, используемый во встроенном ассемблере, должен быть уникален. Если определяется более одной структуры, то все определения должны соответствовать типу и смещению в
структурах. В данном случае элемент с указанным именем является
неоднозначным. Используйте синтаксис: (struc xxx).yyy.
Ambiguous Override of Virtual Base Member функция1: функция2
Сообщение об ошибке этапа компиляции
(неоднозначное переопределение виртуальной базовой функции)
Виртуальная функция виртуального базового класса переопределяется двумя или более различными функциями в различных ветвях
иерархии наследования.
Ambiguous operators need parentheses
Предупреждение этапа компиляции
(неоднозначные операции требуют круглых скобок)
Данное предупреждение выдается, две операции сдвига, отношения или поразрядные логические операции используются вместе без
круглых скобок. Кроме того это предупреждение появится, если операция вычитания используется без скобок вместе с операцией сдвига. Программисты часто путают приоритеты этих операций, поскольку
присвоенные им приоритеты не очевидны.
Ambiguous override of virtual base member базовая_функция:
производная_функция
Сообщение об ошибке этапа компиляции
(неоднозначное переопределение виртуальной базовой функции-элемента в производной функции)
Виртуальная функция, определенная в виртуальном базовом
классе, переопределяется в двух различных классах с одинаковой
иерархией наследования.
Application load & execute error 0001
Application load & execute error FFE0
Фатальная ошибка командной строки
(ошибка загрузки и выполнения прикладной программы)
Не хватает расширенной памяти для загрузки средств командной
строки защищенного режима.
Application load & execute error FFE0
Фатальная ошибка командной строки
Не хватает расширенной памяти для загрузки средств командной
строки защищенного режима.
ArrayAllocated using new may not haveAn initializer
Сообщение об ошибке этапа компиляции
(в выделении массива с помощью new может отсутствовать инициализатор)
При инициализации вектора (массива) классов вы должны использовать конструктор без аргументов. Это называется конструктором, используемым по умолчанию, что означает, что вы можете при
инициализации такого вектора не указывать аргументы.
Array bounds missing ]
Сообщение об ошибке этапа компиляции
(в задании границ массива отсутствует ])
В исходном файле в объявлении границ массива отсутствует
закрывающая квадратная скобка.
Array must haveAt least one element
Сообщение об ошибке этапа компиляции
(массив должен иметь хотя бы один элемент)
Язык Си стандартаANSI и С++ требуют, чтобы массив определялся хотя бы с одним элементом (объекты нулевого размера недопустимы). Существует старый программистский прием, состоящий в
том, чтобы объявить элемент структуры типа массива нулевого размера, а уже затем при помощи функции malloc распределить фактически требуемую память. Этот прием по-прежнему можно использовать, но теперь вы обязаны объявлять массив, как имеющий (как минимум) один элемент. Разумеется, объявления (в противоположность
определениям) массивов неизвестного размера допустимы.
Например:
char ray[] /* определение массива неизвестного размера
недопустимо */
char ray[0] /* определение массива нулевого размера
недопустимо */
extern char ray(); /* объявление с незаданным размером -
допустимо */
Array of references is notAllowed
Сообщение об ошибке этапа компиляции
(массив ссылок недопустим)
Массив ссылок недопустим, поскольку указатели на ссылки недопустимы, а имена массивов встраиваются в указатели.
Array size for 'delete' ignored
Предупреждение этапа компиляции
(размер массива для 'delete' игнорируется)
В последней спецификации С++ больше нет необходимости при
удалении массива задавать его массив. Чтобы можно было компилировать старый код, компилятор игнорирует такую конструкцию и выводит предупреждение.
Array size too lange
Сообщение об ошибке этапа компиляции
(размер массива слишком велик)
Объявленный массив превышает 64К.
Array variable идентификатор is near
Предупреждение этапа компиляции
(переменная-массив идентификатор является ближней)
При использовании параметров командной строки -Ff или -Fm
или команды интегрированной среды Options CompilerAdvanced Code
Generation... Far Data Treshhold глобальные переменные, превышающие пороговый размер, автоматически делаются компилятором дальними (far). Однако, если переменная является инициализированным
массивом с незаданным размером, то его общий размер в момент принятия решения о том, сделать ли его ближним или дальним, неизвестен, и компилятор делает его ближним. Если число заданных для
массива инициализаторов вызывает превышение общим размером переменной порогового значения размера данных, то компилятор выдает
это предупреждение. Если тот факт, что компилятор сделал переменную ближней, вызывает проблемы (например, компоновщик сообщает о
переполнении группы из-за слишком большого числа глобальных данных), вы должны явно сделать переменную дальней, поместив ключевое слово far непосредственно слева от имени переменной в ее объявлении.
Assembler statement too long
Сообщение об ошибке этапа компиляции
(слишком длинный ассемблерный оператор)
Операторы встроенного ассемблера не могут превышать по длине
480 байт.
Assigning тип to перечислимый_тип
Предупреждение этапа компиляции
(присваивание типа перечислимому типу)
Присваивание целочисленного значения типу enum. Это является
ошибкой в C++, но выдаваемое сообщение имеет уровень предупреждения, и программа может заработать.
Assignment to this is notAllowed, use X::operator new instead
Сообщение об ошибке этапа компиляции
(такое присваивание не допускается, используйте вместо него
X::operator new)
В старых версиях С++ единственный способ управления распределением класса объектов заключался в присваивании параметру this
внутри конструктора. Теперь это отменено, поскольку существует
более эффективный, надежный и более общий способ, состоящий в определении функции-элемента operator new.
Attempt to export non-public symbol идентификатор
Предупреждение утилиты TLINK
(попытка экспорта идентификатора, не являющегося общедоступным)
Имя идентификатора было указано в разделе EXPORTS файла определения модуля, но идентификатор с данным именем не найден в
компонуемых модулях, как общедоступный. Это может быть вызвано
опечаткой в имени или тем, что не определена процедура с таким
именем.
Attempt to grant or reduceAccess to идентификатор
Сообщение об ошибке этапа компиляции
(попытка предоставить или ограничить доступ к идентификатору)
Производный класс С++ может модифицировать полномочия доступа к элементу базового класса, но только восстанавливая их в полномочия базового класса. В нем не могут добавляться или ограничиваться эти полномочия.
Attempting to returnA reference toA local object
Сообщение об ошибке этапа компиляции
(попытка вернуть ссылку на локальный объект)
В функции, возвращающей ссылочный тип, вы попытались вернуть
ссылку на временный объект (возможно, в качестве результата вызова конструктора или функции). Поскольку при возврате из вызова
временный объект исчезнет, то ссылка на него недопустима.
Attempting to returnA reference to local name идентификатор
Сообщение об ошибке этапа компиляции
(попытка вернуть ссылку на локальное имя идентификатор)
Данная функция С++ возвращает значение типа ссылки, и вы пытаетесь вернуть ссылку на локальную (динамическую) переменную.
Это недопустимо, поскольку такая переменная при выходе из функции
уничтожается. Вы можете вернуть ссылку на любую статическую или
глобальную переменную, либо изменить функцию таким образом, чтобы
возвращалась не ссылка, а само значение.
- B -
Bad call of intristic function
Сообщение об ошибке этапа компиляции
(неверный вызов неявной функции)
Вы использовали данную неявную функцию без определения прототипа, или указали для данной функции не тот прототип, который
ожидается компилятором.
Bad character in parameters -> символ
Сообщение об ошибке утилиты TLINK
(неверный символ в параметрах)
В командной строке или в командном файле обнаружен один из
следующих символов:
" * < = > ? [ ] |
либо любой управляющий символ, отличный от горизонтальной табуляции, перевода строки, возврата каретки или Ctrl-Z.
Bad define directive syntax
Сообщение об ошибке этапа компиляции
(неверный синтаксис директивы определения)
Макроопределения начинается или заканчивается операцией ##,
или содержит операцию #, за которой следует имя макроаргумента.
Bad field list in debug information in module модуль
Сообщение об ошибке утилиты TLINK
(неверный список полей в отладочной информации модуля)
Обычно эта ошибка вызывается неверной отладочной информацией
в файле OBJ. Сообщите о нейBorland.
Bad file name имя_файла
Сообщение об ошибке этапа компиляции
(неверное имя файла)
Компоновщику передано недопустимое имя файла.
Bad file name format in include directive
Сообщение об ошибке этапа компиляции
(неправильный формат имени файла в директиве включения)
Имена включаемых файлов должны заключаться в кавычки
("имя_файла.h") или в угловые скобки (<имя_файла.h>). Перед именем файла отсутствовала открывающая кавычка или угловая скобка.
Если использовалась макрокоманда, то результирующий текст расширения неверен, т.е., он не взят в кавычки.
Bad file name format in include statement
Сообщение об ошибке утилиты MAKE
(в операторе включения задан неправильный формат имени файла)
Имена включаемых файлов должны заключаться в кавычки или угловые скобки. Были пропущена открывающая кавычка или угловая
скобка.
Bad file name format in inline directive
Сообщение об ошибке этапа компиляции
(неправильный формат имени файла в директиве inline)
Имена включаемых файлов должны заключаться в кавычки
("имя_файла.h") или в угловые скобки (<имя_файла.h>). Перед именем файла отсутствовала открывающая кавычка или угловая скобка.
Если использовалась макрокоманда, то результирующий текст расширения неверен, т.е., он не взят в кавычки.
Bad GCD type in GRPDEF, extended dictionary aborted
Bad GRPDEF type encountered, extended dictionary aborted
Предупреждение утилиты TLIB
(неверный тип GCS в DRPDEF, расширенный словарь отброшен)
Библиотекарь при создании расширенного словаря обнаружил недопустимую запись в определении группы (GRPDEF) в объектном модуле. Единственным типом записи GRPDEF, который поддерживает библиотекарь и компоновщик, является индексный тип сегмента. Если
обнаружен другой тип GRPDEF, то библиотекарь не сможет создать
расширенный словарь. Возможно, объектный модуль, создаваемый продуктами, отличными отBorland, содержат записи GRPDEF других типов. К этому предупреждению может также приводить запорченный объектный модуль.
Bad header in input LIB
Cообщение об ошибке утилиты TLIB
(неверный заголовок во входной библиотеке)
При добавлении объектных модулей к существующей библиотеке
библиотекарь определил, что неверен заголовок библиотеки. Перестройте библиотеку.
Bad ifdef directive syntax
Сообщение об ошибке этапа компиляции
(неверный синтаксис директивы ifdef)
Директива #ifdef должна содержать в теле директивы единственный идентификатор (и ничего более).
Bad LF_POINTER in module модуль
Сообщение об ошибке утилиты TLINK
(неверный LF_POINTER в модуле)
Обычно эта ошибка вызывается неверной отладочной информацией
в файле OBJ. Сообщите о нейBorland.
Bad macro output translator
Сообщение об ошибке утилиты MAKE
(неверная трансляция выходной макрокоманды)
Неверен синтаксис подстановки внутри макрокоманд. Например:
$(MODEL:=s) или $(MODEL:) или $(MODEL:s)
Bad object file record
Bad object file файл near offset смещение
Сообщение об ошибке утилиты TLINK
(неверная запись объектного файла в библиотечном файле в модуле с указанным ближним смещением)
Обнаружен неверно сформированный объектный файл. Обычно это
вызывается указанием имени исходного файла или объектного файла,
который сформирован не полностью. Это может произойти, если при
компиляции машина была перезагружена, или при выводе объектного
файла нажаты клавиши Ctrl+Break.
Bad OMF record type тип encountered in module модуль
Сообщение об ошибке утилиты TLIB
(в модуле обнаружен неверный тип записи OMF)
Библиотекарь при чтении объектного файла обнаружил неверную
запись OMF (формат объектного модуля). Библиотекарь уже считал и
проверил записи-заголовки модуля модуль, поэтому обычно это указы-
вает, что объектный модуль запорчен, и его следует восстановить.
Bad syntax for pure function definition
Сообщение об ошибке этапа компиляции
(неверный синтаксис определения "чистой" функции)
"Чистые" (без побочных эффектов) виртуальные функции задаются добавлением в определение символов "=0". Вы написали что-либо
похожее, но не совпадающее с требуемым в точности.
Bad undef directive syntax
Сообщение об ошибке этапа компиляции
(неверный синтаксис директивы undef)
Директива #undef должна содержать в качестве тела директивы
единственный идентификатор (и ничего более).
Bad undef statement syntax
Сообщение об ошибке утилиты MAKE
(ошибка в синтаксисе оператора "разопределения")
Оператор !undef должен содержать один идентификатор и ничего
больше, как тело оператора.
Bad version number in parameterBlock
Сообщение об ошибке утилиты TLINK
(неверный номер версии в блоке параметров)
Эта ошибка указывает не внутреннее несоответствие в интегрированной среде. Если она возникает, выйдите из интегрированной
среды и перезапустите ее. При работе с автономной версией данная
ошибка не возникает.
Base class класс contains dinamically dispatchable functions
Сообщение об ошибке этапа компиляции
(базовый класс содержит динамически диспетчеризируемые функции)
В настоящий момент динамически диспетчеризуемые виртуальные
таблицы не поддерживают множественного наследования. Данная ошибка возникает из-за того, что класс, содержащий динамически диспетчеризуемую виртуальную функцию, пытается наследовать динамически диспетчеризуемые виртуальные функции из нескольких
порождающих классов.
Base class класс is inaccessibleBecause also in класс
Предупреждение этапа компиляции
(базовый класс недоступен в указанном классе)
Недопустимо использовать класс, одновременно как базовый и
косвенный базовый класс, поскольку его элементы автоматически
становятся неоднозначными. Попробуйте сделать базовый класс в
обоих случаях виртуальным.
Base class класс is included more than once
Сообщение об ошибке этапа компиляции
(базовый класс "класс" включен более одного раза)
Класс С++ может быть производным от любого числа базовых
классов, но непосредственно от одного и того же класса он может
быть производным только один раз.
Base class класс is initialized more than once
Сообщение об ошибке этапа компиляции
(базовый класс "класс" инициализируется более одного раза)
В конструкторе класса С++ список инициализации, следующий за
заголовком конструктора, включает указанный базовый класс более
одного раза.
Base initialization without a class name is now obsolete
Сообщение об ошибке этапа компиляции
(инициализация базового класса без имени класса является устаревшей)
Ранние версии С++ для инициализации базового класса позволяли помещать за заголовком конструктора просто список параметров
конструктора базового класса. Теперь рекомендуется включать имя
базового класса.
Это делает программу понятней и является обязательным в случае множественных базовых классов.
Старая запись:
derived::derived(int i) : (i, 10) { ... }
Новая запись:
derived::derived(int i) :Base(i, 10) { ... }
Bit field cannotBe static
Сообщение об ошибке этапа компиляции
(Битовое поле не может быть статическим)
Только обычные данные-элементы классов С++ могут быть объявлены как static, но не битовые поля.
Bit field too large
Сообщение об ошибке этапа компиляции
(битовое поле слишком велико)
Это ошибка может возникать, когда вы указываете битовое поле
длиной более 16 бит.
Bit field mustBe signed or unsigned int
Сообщение об ошибке этапа компиляции
(битовые поля должны иметь тип signed или unsigned int)
Битовое поле должно быть объявлено с целочисленным типом
signed или unsigned. В языке Си стандарта ANSI битовые поля могут
быть только signed или unsigned int (но, например, не сhar или
long).
Bit field mustBe signed or unsigned int
Предупреждение этапа компиляции
(битовые поля должны иметь тип signed или unsigned int)
В Си стандарта ANSI битовые поля не могут иметь тип char или
unsigned char. Однако, если компиляция не выполняется в строгом
режиме ANSI, компилятор будет допускать такую конструкцию, но отмечать ее данным предупреждением.
Bit fields must contain at least oneBit
Сообщение об ошибке этапа компиляции
(битовые поля должны содержать как минимум один бит)
Вы не можете объявить именованное битовое поле длиной 0 (или
менее 0) бит. Можно объявить битовое поле нулевой длины без имени, по соглашению используемое для принудительной установки выравнивания битового поля по границе байта (или по границе слова,
если выбран параметр выравнивания -a).
Bit field must have integral type
Сообщение об ошибке этапа компиляции
(битовые поля должны иметь целый тип)
В С++ битовые поля, включая перечисления, должны иметь целый
тип; это включает в себя перечисления.
Body already defined for this function функция
Сообщение об ошибке этапа компиляции
(тело функции функция уже определено)
Тело функции с этим же именем и типом уже встречалось выше.
Тело функции может входить в программу только один раз.
Both return and return with a value
Предупреждение этапа компиляции
(одновременно присутствуют операторы return и return с заданным значением)
Текущая функция содержит операторы return с заданным значением возврата и без значения возврата одновременно. В Си это допустимо, но практически всегда является ошибкой. Вероятно, оператор return просто был опущен в конце функции.
- C -
Call of non-function
Сообщение об ошибке этапа компиляции
(вызов не функции)
Вызываемое имя не было объявлено как функция. Эта ошибка
обычно возникает при неправильном объявлении или опечатке в имени
функции.
Call to function функция with no prototype
Предупреждение этапа компиляции
(вызов функции функция без прототипа)
Это сообщение выдается в тех случаях, когда разрешено сообщение "Prototype required" ("Требуется прототип"), и вы вызываете
функцию функция без первоначального задания прототипа этой
функции.
Call to undefined function функция
Сообщение об ошибке этапа компиляции
(вызов не определенной функции)
В вашей программе текущая функция описывается как возвращающая тип, отличный от void в С++ (или int в Си), но компилятор обнаружил возврат без значения. Обычно это указывает на ошибку.
virtual cannot be used with data member
Сообщение об ошибке этапа компиляции
(virtual нельзя использовать с элементами данных)
Элемент данных описан как virtual. Так можно описывать только функции-элементы.
Cannot access an inactive scope
Сообщение об ошибке этапа компиляции
(нельзя обратиться к неактивной области действия)
Вы пытаетесь проверить или вычислить переменную, локальную
по отношению к функции, которая в данный момент не является активной. Это сообщение возникает при вычислении выражения с помощью встроенного отладчика. Это сообщение используется только встроенным отладчиком.
Cannot add or substract relocatable symbols
Сообщение об ошибке этапа компиляции
(сложение или вычитание переместимых идентификаторов невозможно)
Единственная арифметическая операция, которая может выполняться с переместимым именем идентификатора в качестве ассемблерного операнда - это сложение или вычитание с константой. Переменные, процедуры, функции и метки являются переместимыми идентификаторами. Если Var - это переменная, а Const - это константа, то
команды:
MOV AX,Const+Const
и
MOV AX,Var+Const
допустимы, а команда MOV AX AX,Var+Var недопустима.
Cannot allocate a reference
Сообщение об ошибке этапа компиляции
(нельзя выделить ссылку)
Предпринята попытка создать ссылку с помощью операции new.
Это не допускается, поскольку ссылки не являются объектами, поэтому их нельзя распределить с помощью new.
идентификатор cannot be declared in an anonymous union
Сообщение об ошибке этапа компиляции
(идентификатор нельзя описать в анонимном объединении)
Компилятор обнаружил описание функции-элемента или статический элемент анонимного объединения. Такие объединения могут содержать только элемент данных.
функция_1 cannot be distinguished from функция_2
Сообщение об ошибке этапа компиляции
(функция_1 не может отличаться от функции_2)
Тип параметра, указанный в описании этих двух функций не отличаются достаточно, чтобы их можно было идентифицировать как
различные. Попробуйте изменить порядок параметров в одном из описаний.
Cannot call main from within the program
Сообщение об ошибке этапа компиляции
С++ не допускает рекурсивных вызовов функции main.
Cannot call near class member function with a pointer of type тип
Сообщение об ошибке этапа компиляции
(невозможно вызвать функцию-элемент ближнего класса с указателем указанного типа)
Функции-элементы ближних классов (классы являются ближними
по умолчанию в моделях памяти TINY, SMALL и MEDIUM) нельзя вызывать с помощью указателей элементов типа FAR или HUGE. (Заметим,
что это применимо также к вызовам элементов с помощью указателей.) Либо измените указатель на ближний, либо опишите класс как
дальний.
Cannot cast from тип_1 to тип_2
Сообщение об ошибке этапа компиляции
(Приведение типа между типом_1 и типом_2 невозможно)
Приведение типа тип_1 к типу тип_2 здесь запрещено. В Си
указатель может быть приведен к целому типу или к другому типу
указателя. Целочисленный тип может быть приведен к любому целому
типу, типу с плавающей точкой и указателю. Тип с плавающей точкой
может быть приведен к целому типу или другому типу с плавающей
точкой. Структуры и массивы не позволяют выполнение для них приведений типа. Невозможны также приведения для типа void.
В С++ проверяется наличие преобразований и конструкторов,
определяемых пользователем, и в случае их отсутствия применяются
правила приоритета (за исключением указателей на элементы класса). Из целых типов только для константы со нулевым значением допускается приведение к типу указателя элемента. Указатель элемента допускает приведение к целому типу или аналогичному указателю
элемента. Последний будет указывать на элемент данных, если на
него был установлен исходный указатель, и на функцию-элемент, если на нее был установлен исходный указатель. Уточняющий класс типа, к которому выполняется приведение, должен быть тем же, что и базовый класс исходного.
Cannot convert тип_1 to тип_2
Сообщение об ошибке этапа компиляции
(невозможно преобразовать тип_1 в тип_2)
Присваивание, инициализация или выражение требует выполнение
заданного преобразования типа, но данное преобразование недопустимо.
Cannot create instance abstract class класс
Сообщение об ошибке этапа компиляции
(Создание экземпляра абстрактного класса класс невозможно)
Абстрактные классы с "чистыми" виртуальными функциями не могут использоваться непосредственно, допускается лишь создание
производных (порожденных) от них классов.
Cannot define a pointer or reference to a reference
Сообщение об ошибке этапа компиляции
(Определение указателя или ссылки на ссылку невозможно)
Указатель на ссылку или ссылку на ссылку не допускается.
Cannot find класс::класс (класс&) to copy a vector
Сообщение об ошибке этапа компиляции
(Не найден класс::класс (класс&) для копирования вектора)
Если класс С++ класс_1 содержит вектор (массив) класса
класс_2 и вы хотите сконструировать объект типа класс_1 из другого объекта типа класс_1, то должен быть конструктор
класс_2::класс_2 (класс_2&) такой, чтобы могли быть сконструированы элементы вектора.
Данный конструктор принимает только один
параметр (являющийся ссылкой на его класс) и называется конструктором ссылки.
Обычно компилятор создает конструктор ссылки автоматически.
Однако, если вы определили конструктор для класса класс_2, имеющего параметр типа класс_2, и дополнительные параметры со значениями по умолчанию, то данный конструктор ссылки не может существовать и не может быть создан компилятором. (Вследствие того, что
класс_2::класс_2 (класс_2&) и класс_2::класс_2 (класс_2&, int =
1) не различаются компилятором). Вы обязаны переопределить данный
конструктор таким образом, чтобы не все параметры имели значения
по умолчанию. Затем вы можете определить конструктор ссылки или
позволить компилятору создать собственный.
Cannot find класс::операция= (класс&) to copy a vector
Сообщение об ошибке этапа компиляции
(Не найден класс::операция=(класс&)для копирования вектора)
Когда в С++ класс "класс_1" содержит вектор (массив) класса
класс_2, и вы хотите скопировать класс типа класс_1, где должна
быть операция присваивания класс::операция=(класс&), для копирования данного вектора. Обычно компилятор подставляет такую операцию автоматически. Однако, если вы для класса_2 определяете operator=, но не ту, которая воспринимает параметр типа класс&, то
компилятор не будет подставлять ее автоматически - вы должны указать ее сами.
Cannot find default конструктор to initialize array element
of type класс
Сообщение об ошибке этапа компиляции
(для инициализации элемента массива типа класс невозможно
найти используемый по умолчанию конструктор)
При описании массива класса, имеющего конструкторы, вы должны либо явно инициализировать каждый элемент данного массива, либо класс должен содержать используемый по умолчанию конструктор
(он будет использоваться для инициализации элементов массива, не
имеющих явных инициализаторов). Если вы не определили конструктор
по умолчанию, компилятор будет определять для класса используемый
по умолчанию конструктор.
Cannot find default конструктор to initialize base class
класс
Сообщение об ошибке этапа компиляции
(для инициализации базового класса класс невозможно найти
используемый по умолчанию конструктор)
Когда в С++ строится производный класс "класс_2", должен
быть построен каждый базовый класс "класс_1". Если конструктор
для класса_2 не задает конструктор для "класса_1" (как часть заголовка класса_2), то должен существовать конструктор
класс_1::класс_1() для базового класса. Данный конструктор без
параметров называется используемым по умолчанию конструктором.
Если вы не определили используемый по умолчанию конструктор, компилятор будет подставлять используемый по умолчанию конструктор
автоматически. Если вы определили конструктор, его нужно указать
явно.
Cannot find default конструктор to initialize member идентификатор
Сообщение об ошибке этапа компиляции
(для инициализации элемента идентификатор невозможно найти
используемый по умолчанию конструктор)
Если класс С++ класс_2 содержит элемент класса класс_2, и вы
хотите построить объект типа класс_1, но не из другого объекта
типа класс_1, то требуется наличия конструктора
класс_2::класс_2(), благодаря чему может быть построен данный
элемент. Данный конструктор без параметров называется используемым по умолчанию конструктором. Если вы не определили используемый по умолчанию конструктор для класса класс_2, компилятор будет
подставлять используемый по умолчанию конструктор автоматически.
Если вы определили конструктор, его нужно указать явно.
Cannot find MAKE.EXE
Сообщение об ошибке утилиты MAKE
(не найден файл MAKE.EXE)
Не найдена утилита MAKE. Убедитесь, что она находится в текущем каталоге или по маршруту.
Cannot generate COM file: data below initial CS:IP defined
Сообщение об ошибке утилиты TLINK
(файл COM сгенерировать невозможно, определены данные ниже
первоначального значения CS:IP)
Данная ошибка является результатом попытки сгенерировать
данные или код ниже стартового адреса файла .COM (обычно 100).
Убедитесь, что начальный адрес устанавливается в значение 100 с
помощью инструкции ORG 100H. Для программ, написанных на языке
высокого уровня, такая ошибка возникать не должна. Если она возникает, убедитесь, что компонуется корректный объектный модуль
инициализации (C0x).
Cannot generate COM file: invalid initial entry point address
Сообщение об ошибке утилиты TLINK
(файл COM сгенерировать невозможно: неверный адрес начальной
точки входа)
Вы использовали параметра /Tdc или /t, но начальный адрес
программы не равен 100H, что требуется для файлов .COM.
Cannot generate COM file: program exceeds 64K
Сообщение об ошибке утилиты TLINK
(файл COM сгенерировать невозможно: программа превышает по
размеру 64К)
Вы использовали параметр /Tdc или /t, но общий размер программы превышает предел формата .COM.
Cannot generate COM file: segment-relocatable items present
Сообщение об ошибке утилиты TLINK
(невозможно сгенерировать файл COM: присутствуют относитель-
ные перемещаемые записи)
Вы использовали параметр /Tdc или /t, но программа содержит
относительные корректировки сегмента, которые не допускаются в
файлах .COM.
Cannot generate COM file: stack segment present
Сообщение об ошибке утилиты TLINK
(невозможно сгенерировать файл COM: присутствуют сегмент
стека)
Вы использовали параметр /Tdc или /t, но программа содержит
сегмент стека, что не допускается для файлов .COM.
Cannot generate функция from template function шаблон
Сообщение об ошибке этапа компиляции
(из указанного шаблона невозможно сгенерировать данную функцию)
Обнаружен вызов шаблона функции, но соответствующую шаблону
функцию нельзя сгенерировать из данного шаблона.
Cannot have a non-inline function in a local class
Cannot have a static data in a local class
Сообщение об ошибке этапа компиляции
(в локальном классе встроенная функция или статические данные не допускаются)
Все элементы класса, описанного для функции как локальный,
должны быть полностью определены в определении класса. Это означает, что такие локальные классы не могут содержать никаких статических элементов данных, и тела всех их функций-элементов должны определяться в определении класса.
Cannot have multiple paths for implicit rule
Сообщение об ошибке утилиты MAKE
(для неявных правил не допускается несколько маршрутов)
Для каждого расширения неявного правила может быть только
один маршрут. Списки множественных маршрутов допустимы только для
зависимых файлов и в явном правиле, например:
{path1;path2}.c.obj: # недопустимо
{path}.c.obj # допустимо
Cannot have paths for target
Сообщение об ошибке утилиты MAKE
(для целевого файла не допускается несколько маршрутов)
Списки множественных маршрутов допустимы только для зависимых файлов и явном правиле, например:
{path1;path2}.c.obj: # недопустимо
{path}.c.obj # допустимо
Cannot initialize a class member here
Сообщение об ошибке этапа компиляции
(инициализация элемента класса здесь невозможна)
Отдельные элементы структур, объединений и классов С++ могут
не иметь инициализаторов. Структура или объединение могут инициализироваться как единое целое при помощи инициализаторов в фигурных скобках. Класс С++ можно инициализировать только при помощи
конструктора.
Cannot initialize тип_1 with тип_2
Сообщение об ошибке этапа компиляции
(тип_1 не может быть инициализирован типом_2)
Вы пытаетесь инициализировать объект типа тип_1 значением
типа тип_2, что недопустимо. Правила инициализации те же, что и
для присваивания.
Cannot modify a const object
Сообщение об ошибке этапа компиляции
(модификация объекта-константы невозможна)
Недопустимая операция с объектом, объявленным константой,
например, попытка присваивания такому объекту.
Cannot overload 'main'
Сообщение об ошибке этапа компиляции
(переопределение функции 'main' невозможно)
Функция main - это единственная функция, переопределить которую нельзя.
функция cannot return a value
Сообщение об ошибке этапа компиляции
(функция не может возвращать значение)
Это сообщение выдается, если функция с типом возврата void
содержит оператор return, возвращающий некоторое значение, например, int.
идентификатор cannot start an argument declaration
Сообщение об ошибке этапа компиляции
(указанный идентификатор не может начинать описание аргумента)
В начале аргумента в описателе функции найден не определенный идентификатор. Это часто вызывается опечатками в имени или
описании типа или пропуском (ошибка обычно возникает при включении файла заголовка).
идентификатор cannot start an parameter declaration
Сообщение об ошибке этапа компиляции
(указанный идентификатор не может начинать описание параметра)
В начале аргумента в описателе функции найден не определенный идентификатор. Это часто вызывается опечатками в имени или
описании типа или пропуском (ошибка обычно возникает при включении файла заголовка).
Cannot take address of main
Сообщение об ошибке этапа компиляции
(адрес main получить невозможно)
В С++ не допускается получение адреса функции main.
Cannot throw type - ambiguous class база
Сообщение об ошибке этапа компиляции
(тип породить невозможно - неоднозначный базовый класс)
Не допускается порождать класс, содержащий более одной копии
невиртуального (базового) класса.
Cannot write a string option
Сообщение об ошибке утилиты MAKE
Параметр -W утилиты MAKE записывает в MAKE.EXE символьный
параметр. При строковом параметре генерируется данное сообщение.
Cannot write GRPDEF list, extended dictionary aborted
Сообщение об ошибке утилиты TLIB
(список GRPDEF записать невозможно, расширенный словарь отброшен)
Библиотекарь не может записать в конец библиотечного файла
расширенный словарь. Обычно это указывает на недостаток места на
диске.
Can't grow LE/LIDATA record buffer
Сообщение об ошибке утилиты TLIB
(невозможно увеличение записи буфера LE/LIDATA)
Ошибка командной строки. См. сообщение out of memory reading
LE/LIDATA record from object buffer
.
Case bypassed initialization of local variable
Сообщение об ошибке этапа компиляции
(конструкция case обошла инициализацию локальной переменной)
В С++ недопустимо любым способом обходить инициализацию локальной переменной. В данном случае в конструкторе case имеется
ветвь, по которой управление передается за точку инициализации
локальной переменной.
Case outside of switch
Сообщение об ошибке этапа компиляции
(оператор case вне оператора switch)
Компилятор встретил оператор case вне оператора switch. Это
часто случается при несоответствии числа правых и левых фигурных
скобок.
Case statement missing :
Сообщение об ошибке этапа компиляции
(в операторе case отсутствует :)
Оператор case должен содержать выражение типа константы, за
которым следует двоеточие. Либо в выражении оператора case отсутствует двоеточие, либо перед двоеточием находится лишний идентификатор.
Catch expected
Сообщение об ошибке этапа компиляции
(требуется catch)
В программе С++ за блоком try должен следовать по крайней
мере один блок catch.
Character constant must be one or two characters long
Сообщение об ошибке этапа компиляции
(символьная константа должна иметь в длину один или два символа)
Символьные константы могут иметь длину только в один или два
символа.
Character constant too long
Сообщение об ошибке утилиты MAKE
(слишком длинная символьная константа)
Символьные константы могут иметь длину только в один или два
символа.
Circular depandency exists in makefile
Фатальная ошибка утилиты MAKE
(в формирующем файле имеется циклическая зависимость)
Формирующий файл указывает, что файл должен иметь новую версию до того, как его можно построить. Возьмем, например, явные правила:
filea: fileb
fileb: filec
filec: filea
Это предполагает, что файл filea зависит от файла fileb, который зависит от файла filec, а файл filec зависит от файла filea. Это недопустимо, так как прямо или косвенно не может зави сеть от самого себя.
Class класс may not contain pure functions
Сообщение об ошибке этапа компиляции
(указанный класс может не содержать "чистых" функций)
Описанный класс не является абстрактным, поэтому он может не
содержать "чистых" функций.
Class member элемент declared outside its class
Сообщение об ошибке этапа компиляции
(элемент класса объявлен вне своего класса)
Функции-элементы класса С++ могут описываться только внутри
объявления класса. В отличие от функций, не являющихся элементами
класса, они не могут иметь несколько объявлений или описываться в
других местах.
Code has no effect
Предупреждение этапа компиляции
(код не вызывает никаких действий)
Данное предупреждение выдается, когда компилятор встречает
оператор с операциями, не выполняющими никаких действий. Например, оператор:
a + b;
не оказывает воздействия ни на какую переменную. Операция не нужна и наверняка записана по ошибке.
Colon expected
Фатальная ошибка утилиты MAKE
(требуется двоеточие)
Вы забыли указать в конце неявного правила двоеточие.
.c.obj: # правильно
.c.obj # неправильно
Command arguments too long
Фатальная ошибка утилиты MAKE
(Аргументы команды имеют слишком большую длину)
Аргументы команды, выполняемой обслуживающей программой
MAKE, имеют в длину более 127 знаков - ограничение, установленное
системой DOS.
Command syntax error
Фатальная ошибка утилиты MAKE
(синтаксическая ошибка в команде)
Это сообщение появляется, если:
- Первая строка правила начинается с пробела.
- Неявное правило не состоит из расшир.расшир:.
- Явное правило не содержит имени перед : символа.
- Макроопределение не содержит имени перед = символ.
Command too long
Фатальная ошибка утилиты MAKE
(слишком длинная команда)
Длина команды превышает 128 символов. Желательно использовать командный файл утилиты.
Common segment exceeds 64K
Сообщение об ошибке утилиты TLINK
(общий сегмент превышает 64К)
Программа содержит более 64К ближних неинициализированных
данных. Попытайтесь описать некоторые неинициализированные данные, как дальние.
Compiler could not generate copy constructor for class класс
Сообщение об ошибке этапа компиляции
(компилятор не может сгенерировать конструктор копирования
для класса класс)
В соответствии с правилами языка компилятор не может сгенерировать для класса необходимый конструктор копирования.
Compiler could not generate default constructor for class
класс
Сообщение об ошибке этапа компиляции
(компилятор не может сгенерировать используемый по умолчанию
конструктор для класса)
В соответствии с правилами языка компилятор не может сгенерировать для класса необходимый конструктор, используемый по
умолчанию.
Compiler could not generate operator= for class класс
Сообщение об ошибке этапа компиляции
(компилятор не может сгенерировать для класса operator=)
В соответствии с правилами языка компилятор не может сгенерировать для класса необходимую операцию присваивания.
Compiler table limit exceeded
Фатальная ошибка этапа компиляции
(превышен размер таблицы компилятора)
Данное сообщение появляется при переполнении одной из внутренних таблиц компилятора. Это обычно означает, что компилируемый
модуль содержит слишком много объявлений классов C++, либо слишком много функций или других элементов программы. В этом случае
увеличение доступной компилятору памяти не поможет. Единственным
средством обычно является упрощение файлов программы.
Compound statement missing }
Сообщение об ошибке этапа компиляции
(в составном операторе отсутствует })
Компилятор дошел до конца исходного файла, но не обнаружил
закрывающей фигурной скобки. Это обычно бывает при несовпадающем
количестве правых и левых скобок.
Condition is always false
Condition is always true
Предупреждение этапа компиляции
(условие всегда ложно/истинно)
Компилятор обнаружил сравнение значений, при котором результат всегда принимает ложное или истинное значение. Например:
void proc(unsigned x)
{
if (X >= 0) /* всегда 'true' */
{
.
.
.
}
}
Conflicting type modifiers
Сообщение об ошибке этапа компиляции
(противоречащие друг другу модификаторы типа)
Это случается, когда в объявлении встречается, например, два
ключевых слова - far и near, относящихся к одному и тому же указателю. Одному указателю может соответствовать только один модификатор адресации, а функция может иметь только один модификатор
языка (cdecl, pascal или interrupt).
идентификатор conflicts with module модуль
Сообщение об ошибке утилиты TLINK
(конфликт указанного идентификатора с модулем)
Это указывает на несогласованность определений идентификатора. TLINK нашел виртуальную функцию и одно общее определение с
тем же именем.
Constant expression required
Сообщение об ошибке этапа компиляции
(требуется выражение типа константы)
Массивы должны объявляться с заданным константой выражением.
Данная ошибка обычно вызывается опечаткой в константе в #define.
Constant is long
Предупреждение этапа компиляции
(длинная константа)
Компилятор встретил либо десятичную константу, превышающую
значение 32767, либо восьмеричную (или шестнадцатиричную) константу, превышающую значение 65535 без следующей за ней буквы l
или L. Такая константа будет рассматриваться как имеющая тип
long.
Constant member элемент is class without constructors
Сообщение об ошибке этапа компиляции
(элемент-константа элемент в классе без конструкторов)
Класс, содержащий элементы-константы, должен иметь по крайней мере один конструктор, определенный пользователем. В противном случае такие элементы инициализировать будет невозможно.
Constant member элемент is not initialized
Предупреждение этапа компиляции
(элемент-константа не инициализирована)
Класс С++ имеет константу-элемент, которая не была инициализирована. Отметим, что допустимым является инициализировать константу-элемент, а не присваивать ей значение.
Constant out of range in comparison
Предупреждение этапа компиляции
(участвующая в сравнении константа вне допустимого диапазона)
В исходном файле имеется сравнение, в котором участвует подвыражение, лежащее вне диапазона, допустимого для прочих типов
подвыражений. Например, сравнение числа unsigned с -1 не имеет
смысла. Для того, чтобы получить константу unsigned больше 32767
(десятичное), требуется либо явно задать приведение типа к
unsigned (например, (unsigned)65535), либо добавить к константе
буквы u или U (например, 65535u).
При выдаче данного сообщения компилятор тем не менее сгенерирует код для сравнения. Если даже данный код будет всегда давать одинаковый результат, например при сравнении выражения типа
Char с 4000, код все равно будет выполнять сравнение.
Constant variable переменная must be initialized
Сообщение об ошибке этапа компиляции
(указанная переменная-константа должна инициализироваться)
Данный объект С++ описан как const, но не инициализируется.
Поскольку значений ему присвоить нельзя, он должен инициализироваться в точке описания.
Constructor cannot be const or volatile
Сообщение об ошибке этапа компиляции
(конструктор не может иметь тип const или volatile)
Конструктор описан как const и/или volatile, а это не допускается.
Constructor cannot have a return type specification
Сообщение об ошибке этапа компиляции
(конструктор не может содержать спецификацию типа возврата)
Конструкторы С++ имеют неявный тип возврата, используемый
компилятором, но вы не можете описать тип возврата или возвратить
значение.
Conversion may lose significant bits
Предупреждение этапа компиляции
(при преобразовании могут быть потеряны значащие биты)
В операции присваивания, или в других обстоятельствах, требуется преобразование типа long или unsigned long в int или
unsigned int. Поскольку переменные типов int и long имеют разный
размер, такое преобразование может привести к изменению работы
программы.
Conversion of near pointer not allowed
Сообщение об ошибке этапа компиляции
(преобразование ближнего указателя недопустимо)
Ближний указатель не может преобразовываться в дальний при
вычислении выражения, если программа в текущий момент не выполняется. Причина этого состоит в том, что для преобразования требуется знать текущее значение регистра DS программы пользователя,
которое в данный момент просто не существует. Это сообщение используется только в отладчике интегрированной среды.
Conversion operator cannot have a return type specification
Сообщение об ошибке этапа компиляции
(операция преобразования не может иметь спецификацию типа
возврата)
Функция-элемент преобразования типа С++ задает тип возврата,
отличный от самого типа. В описании функции преобразования
operator может не задаваться никакого типа возврата.
Conversion to тип will fail fo members of virtual base класс
Сообщение об ошибке этапа компиляции
(для элементов виртуального базового класса класс преобразование к указанному типу выполнить не удастся)
Данное предупреждение выводится в некоторых случаях, когда
указатель-элемент приводится к другому типу указателя-элемента,
если класс указателя-элемента содержит виртуальные базовые
классы, и использован параметр -Vv. Это означает, что если преобразуемый указатель-элемент указывает (во время преобразования) на
элемент класса класс, то преобразование выполнить нельзя, а результатом преобразования будет указатель-элемент со значением
NULL.
Could not allocate memory for per module data
Сообщение об ошибке утилиты TLIB
(невозможно выделить память для данных модулей)
Библиотекарь исчерпал доступную память.
Could not create list file имя_файла
Сообщение об ошибке утилиты TLIB
Библиотекарь не может создать для библиотеки файл списка.
Это может вызываться нехваткой места на диске.
Could not find a match for аргумент(ы)
Сообщение об ошибке этапа компиляции:
(не найдено соответствие аргументу (аргументам))
Не найдена функция С++ с параметрами, соответствующими заданным аргументам.
Could not find file имя_файла
Сообщение об ошибке этапа компиляции
(невозможно найти файл имя_файла)
Компилятор не может найти файл, заданный в командной строке.
Could not get procedure address from DLL имя_файла
Сообщение об ошибке утилиты TLINK
(невозможно получить адрес процедуры из указанной DLL)
Компоновщик не может получить из заданной DLL адрес процедуры. Убедитесь в корректности версии DLL.
Could not load DLL имя_файла
Сообщение об ошибке утилиты TLINK
(указанную DLL загрузить невозможно)
Компоновщик не может загрузить заданную DLL. Убедитесь, что
она включена в маршрут.
Could not write output
Сообщение об ошибке утилиты TLIB
(невозможно записать выходные данные)
Библиотекарь не может записать выходной файл.
Couldn't alloc memory for per module data
Сообщение об ошибке утилиты TLIB
(невозможно выделить память для данных модуля)
Библиотекарь исчерпал доступную память.
имя_файла couldn't be creates, original won't be changed
Предупреждающее сообщение об ошибке утилиты TLIB
(невозможно создать файл, содержимое исходного файла изменено не будет)
Предпринята попытка извлечь объект (действие '*'), но библиотекарь не может создать объектный файл, в который можно записать
выделяемый модуль. Либо объектный файл уже существует и доступен
только по чтению, либо диск переполнен.
Couldn't get LE/LIDATA record buffer
Сообщение об ошибке утилиты TLIB
(невозможно получить буфер LE/LIDATA)
Ошибка командной строки. См. сообщение out of memory reading
LE/LIDATA record from object module.
Couldn't get procedure address from DLL имя_файла
Сообщение об ошибке утилиты TLINK
(невозможно получить адрес процедуры из указанной DLL)
Компоновщик не может получить из заданной DLL адрес процедуры. Убедитесь, что DLL включена в маршрут.
Couldn't load DLL имя_файла
(указанную DLL загрузить невозможно)
Компоновщик не может загрузить заданную DLL. Убедитесь, что
она включена в маршрут.
Cycle in include files: имя_файла
Сообщение об ошибке утилиты MAKE
(цикл во включаемых файлах)
Формирующий файл включает в сценарии генерации сам себя.
Назад | Содержание | Вперед