Камінь спотикання () в програмуванні, позначає в мові програмування чи системі валідну конструкцію що працює як задокументовано, але є контрінтуїтивною і часто призводить до помилок, тому що її просто застосувати, а результат неочікуваний.

Приклади Класичним каменем спотикання в C/C++ є конструкціяif (a = b) code;Вона синтаксично правильна: записує значення змінної b в a а тоді виконує code якщо a ненульове. Іноді це навіть очікується. Щоправда, найчастіше це одруківка: програміст мав на увазіif (a == b) code;що виконує code якщо a дорівнювало b.

Див. також

Використовність

Зноски

Література

Посилання

C Traps and Pitfalls by Andrew Koenig C++ Gotchas A programmer's guide to avoiding and correcting ninety-nine of the most common, destructive, and interesting C++ design and programming errors, by Stephen C. Dewhurst