amu – Übersetzung – Keybot-Wörterbuch

Spacer TTN Translation Network TTN TTN Login Français English Spacer Help
Ausgangssprachen Zielsprachen
Keybot 390 Ergebnisse  www.viva64.com  Seite 2
  LibRaw, Coverity SCAN, ...  
That is, again, no fixing is needed - in this particular case.
Т.е. опять, фиксить не надо - в случае данной предметной области.
  V593. Consider reviewin...  
The analyzer detected a potential error in an expression that is most probably working in a way other than intended by the programmer. Most often you may see errors of this type in expressions where an assignment operation and operation of checking a function's result are performed simultaneously.
Анализатор обнаружил потенциальную ошибку в выражении, которое, скорее всего, работает не так, как задумывал программист. Данный тип ошибок чаще всего можно встретить в выражениях, где одновременно проверяется результат работы функции и выполняется присваивание. Рассмотрим простой пример:
  Virtual Method Table an...  
That is also true for programming, and for programming on C++ it is true twice as much. In this article, I shall explain an important language feature, known as virtual table pointer, which is included in almost every nontrivial class, and how it can accidentally be damaged.
Верно это и для программирования, а для программирования на языке С++ – вдвойне. В этой статье будет описано важное понятие языка, известное как "Виртуальный табличный указатель", что присутствует почти во всех сложных классах, и то, каким образом его можно случайно повредить. Это может, в свою очередь, вести к едва поддающимся отладке ошибкам. Сначала напомню, что это вообще такое, а затем и поделюсь своими соображениями по поводу того, как и что может там сломаться.
  PVS-Studio confesses it...  
We are a small company that is living solely on selling the PVS-Studio software product. We do not receive any grants or other support from the government or large companies. It all puts great responsibility on us, in choosing what direction to take in the development .
Мы - маленькая компания, которая существует исключительно за счёт продажи программного продукта PVS-Studio. Мы не получаем гранты или какую-то иную поддержку от государства или больших компаний - всё это накладывает большую ответственность за выбор направления развития.
  FAQ for those who have ...  
It is support that is very expensive. Only static analyzer's developers can answer any questions concerning it. We do not get questions like "how can I download the file?" or "what is the float type?".
Очень дорого стоит поддержка. Ответить на вопросы могут только непосредственно разработчики статического анализатора. У нас нет вопросов в духе "как мне скачать файл?" или "что такое тип float?". Наши клиенты это программисты, которые задают сложные вопросы по языку Си++ или отписывают ошибки, сопровождаемые распечаткой стека при падении. Обрабатывать такие запросы могут только программисты.
  V3001. There are identi...  
The analyzer has detected a code fragment that is very likely to have a logical error in it. The program text contains an operator (<, >, <=, >=, ==, !=, &&, ||, -, /, &, |, ^) whose both operands are identical subexpressions.
Анализатор обнаружил фрагмент кода, который, скорее всего, содержит логическую ошибку. В тексте программы имеется оператор (<, >, <=, >=, ==, !=, &&, ||, -, /, &, |, ^), слева и справа от которого расположены одинаковые подвыражения.
  A User's Experience of ...  
That is, despite that no errors occurred in the function some_action (which was quite uncommon, as it made use of a whole lot of external periphery, because of which we had troubles trying to locate the problem), whether or not the loop continued depended on the value stored at the 0 address (in embedded a zero address is legal in most cases).
Т.е. несмотря на то, что в функции some_action (которая была весьма нетривиальной, задействуя кучу внешней периферии — из-за чего локализовать проблему и было не самой легкой задачей) никаких ошибок не происходило, продолжение цикла зависело от значения, записанного по 0 адресу (в embedded нулевой адрес вполне легален в большинстве случаев). А по этому адресу в подавляющем большинстве случаев был записан 0.
  The further we go, the ...  
PVS-Studio was modified for processing such code correctly, that is, without missing body of a function, in the June of year 2011. It was exactly at that moment when the error had been introduced, the error that we had to search for several days.
Чтобы корректно обрабатывать такой код и не пропустить тело функции, в PVS-Studio были внесены соответствующие правки в июне 2011 года. И именно тогда, была сделана ошибка, которую нам пришлось искать несколько дней.
  V220. Suspicious sequen...  
That is, the pointer is first cast to the 32-bit 'int' type and then is extended to 'intptr_t'. It doesn’t look nice. The programmer should rather have written it like "(intptr_t)GetHandle(STD_OUTPUT_HANDLE)".
Т.е. вначале указатель превращается в 32-битный тип 'int', а замет расширяется до 'intptr_t'. Это не очень красиво. Лучше было бы написать "(intptr_t)GetHandle(STD_OUTPUT_HANDLE)". Однако, никакой ошибки здесь и нет, так как значения типа HANDLE помещаются в 'int'. Поэтому анализатор промолчит.
  New diagnostic function...  
This rule is rather specific and in 99% gives a false alarm. That is why it is disabled by default.
Данное правило достаточно специфично и в 99% случаев дает ложное срабатывание. Поэтому по умолчанию оно отключено.
  PVS-Studio vs Clang  
Odd operation N2 that is not an error for sure
Бестолковое действие N2, которое точно не является ошибкой
  Uninitialized variable  
An uninitialized variable is a variable that is declared but is not set to a definite known value before it is used.
Неинициализированная переменная (uninitialized variable)— это такая переменная, которой не было присвоено начальное значение.
  How to make fewer error...  
As you may see, errors of this type deserve consideration. That is why I've made a separate paragraph to describe them. They are quite widely-spread. I could give you some more examples but they all are similar.
Как видите, ошибки данного типа заслуживают внимания. И я не случайно выделил их описание в отдельный пункт. Они весьма и весьма распространены. Можно привести другие примеры, но все они однотипны.
  Archeology for Entertai...  
That is, the | and & operators are swapped by mistake.
В общем, перепутали оператор | и &.
  Static analysis and reg...  
That is all. You don't have to think of operators' priorities, you don't have to fear that you will encounter a bracket in this text: b = '(' == x && x == ')';. You can simply compare the left and the right tree branches.
И всё. Не надо думать про приоритеты операций. Не надо ожидать подвоха, что встретится скобка в тексте: b = '(' == x && x == ')';. Можно просто сравнить левую и правую ветку дерева.
  V206. Explicit conversi...  
Of course, the type conversion like that is not in itself an error. Let's figure out what for we have implemented this diagnostic.
Конечно, само по себе такое приведение типа не является ошибкой. Давайте разберёмся для чего реализована такая диагностика.
  V3074. The 'A' class co...  
then the 'Dispose' method will be called from class 'A'. That is, the 'B' class' resources won't be released.
Будет вызвана функция 'Dispose' из класса 'A', т.е. освобождение ресурсов класса 'B' не произойдёт.
  Visual Studio Team Syst...  
That is why, if you need to use static analysis when working with x64 and Itanium compilers there is only one way - use a third-party tool. For example, Viva64 code analyzer included into PVS-Studio that supports both x64 and Itanium platforms besides x86.
Поэтому если нужно использовать статический анализ при использовании x64 и Itanium компиляторов, то решение только одно - использовать сторонний инструмент. Например, анализатор кода Viva64, входящий в состав PVS-Studio, который помимо x86, поддерживает и x64, и Itanium платформы.
  V737. It is possible th...  
That is, the array will actually be initialized in the following way:
В итоге, на самом деле массив инициализируется так:
  Blog  
Visual C++ does not support 64-bit inline assembler. That is why you get an error when trying to compile a code like this:.
Visual C++ не поддерживает 64-битный встроенный ассемблер. В результате вы получите ошибку при попытке компиляции следующего кода:.
  V718. The 'Foo' functio...  
Acquire a synchronization object that is owned by code that is waiting to acquire the loader lock. This can cause a deadlock.
Захват объекта синхронизации, принадлежащего коду, который находится в ожидании захвата блокировки загрузчика. Это может привести к взаимной блокировке потоков.
  V718. The 'Foo' functio...  
Acquire a synchronization object that is owned by code that is waiting to acquire the loader lock. This can cause a deadlock.
Захват объекта синхронизации, принадлежащего коду, который находится в ожидании захвата блокировки загрузчика. Это может привести к взаимной блокировке потоков.
  V602. Consider inspecti...  
The code contains an error, since it is the '<' operator that is written by accident in the expression. This is the correct code:
Код содержит ошибку, так как случайно в выражении написан оператор '<'. Корректный вариант кода должен выглядеть так:
  V3071. The object is re...  
The analyzer detected that a function returns an object that is being used in the 'using' statement.
Анализатор обнаружил возврат из функции объекта, который используется в операторе using.
  Blog  
GDB is a tool that is hard to live without. Of course, as Brooks says: "The quality in software development is achieved through proper design, not by endless testing". However, proper design doesn't protect from logical errors, typos, null pointers, and so on.
GDB - инструмент, без которого тяжело обойтись. Конечно, как говорит Брукс "Качество разработки программного продукта достигается благодаря правильному проектированию, а не бесконечному тестированию". Однако, правильное проектирование не защищает от логических ошибок, опечаток, нулевых указателей и так далее. И вот здесь нам и помогают инструменты отладки кода, такие как GDB. Моя цель показать, что не менее полезными инструментами являются статические анализаторы кода, выявляющие многие ошибки на самых ранних этапах. Намного лучше, если ошибка будет исправлена в коде, ещё до этапа тестирования и отладки. Для демонстрации пользы от статического анализа кода, поищем внутри GDB ошибки с помощью анализатора PVS-Studio.
  V557. Array overrun is ...  
The last array's item has index 13, not 14. That is why the correct code is this one:
Последним элемент массива имеет индекс 13, а не 14. Поэтому корректный код должен иметь вид:
  V739. EOF should not be...  
That is, EOF is actually but the value '-1' of type 'int'. Let's see what complications may occur. The first example:
Как видите, EOF есть ни что иное как '-1' типа 'int'. Посмотрим, к каким последствиям это может приводить. Первый пример:
  A Spin-off: Firebird Ch...  
That is why it is not a good idea to give the same name to different variables in one function:
Вот почему плохо в функции давать разным переменным одно и то же имя:
  Note about diagnostics ...  
The file that is included in the whole project (stdafx.h),
Во включаемом во весь проект файле (stdafx.h),
  V3015. It is likely tha...  
It is the comparison 'i < 5' that is performed instead of 'j < 5' in the inner loop. Such an error might be not so visible in a real application. This is the correct code:
Во внутреннем цикле происходит сравнение 'i < 5' вместо 'j < 5'. В реальном приложении подобная ошибка может быть не так хорошо заметна. Корректный вариант кода:
Arrow 1 2 3 4 5 6 7 8 9 10 Arrow