Мне хорошо известно, что, вероятно, не будет "самой трудной для поиска ошибки в С++", но меня все еще интересует то, что другие люди могут подумать/могли уже встретить.
Идея этого вопроса возникла во время обсуждения с другом. Мы согласились, что должно быть довольно просто саботировать проект cpp, в частности, в том числе ошибки в исходном коде, который вы отправляете... Но самое лучшее, что мы могли подумать, это использовать неинициализированные переменные (приводящие к случайным ошибкам сегментации во время выполнения), Я уверен, что есть лучшие способы...?!
Требуемые характеристики неисправного кода:
- должен выглядеть как действительный код с первого взгляда
- не должен останавливать компиляцию кода (слишком очевидно)
- если возможно, ошибка должна выглядеть так, как будто это может быть ошибкой (если она когда-либо будет найдена)
- ошибка должна быть достаточно серьезной, чтобы остановить загрузку программного обеспечения (например, случайные сбои seg, логический сбой кода и т.д.).
Тем не менее, хотя это должно быть заметно, это не должно быть очевидным сразу после подачи кода... Ну, вы поняли идею.
Не беспокойтесь, наши соображения чисто теоретические (мы не планируем саботировать любой проект). Мы просто рассматривали это как достаточно хороший мысленный эксперимент, чтобы поделиться с другими: -)
Короче:
Какой самый тонкий способ саботировать исходный код, который может остаться незамеченным в дифференциальной фиксации (например, git), но в конечном итоге будет препятствовать выпуску программного обеспечения?