เชธเซ€เชชเซ€เชชเซ€เชšเซ‡เช• 2.6เชจเซเช‚ เชชเซเชฐเช•เชพเชถเชจ, เชธเซ€++ เช…เชจเซ‡ เชธเซ€ เชญเชพเชทเชพเช“ เชฎเชพเชŸเซ‡ เชธเซเชŸเซ‡เชŸเชฟเช• เช•เซ‹เชก เชตเชฟเชถเซเชฒเซ‡เชทเช•

เชธเซเชŸเซ‡เชŸเชฟเช• เช•เซ‹เชก เชตเชฟเชถเซเชฒเซ‡เชทเช• cppcheck 2.6 เชจเซเช‚ เชจเชตเซเช‚ เชธเช‚เชธเซเช•เชฐเชฃ เชฌเชนเชพเชฐ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ เชคเชฎเชจเซ‡ C เช…เชจเซ‡ C++ เชญเชพเชทเชพเช“เชฎเชพเช‚ เช•เซ‹เชกเชฎเชพเช‚ เชญเซ‚เชฒเซ‹เชจเชพ เชตเชฟเชตเชฟเชง เชตเชฐเซเช—เซ‹เชจเซ‡ เช“เชณเช–เชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡, เชœเซ‡เชฎเชพเช‚ เชฌเชฟเชจ-เชฎเชพเชจเช• เชตเชพเช•เซเชฏเชฐเชšเชจเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, เชเชฎเซเชฌเซ‡เชกเซ‡เชก เชธเชฟเชธเซเชŸเชฎเซเชธ เชฎเชพเชŸเซ‡ เชฒเชพเช•เซเชทเชฃเชฟเช• เช›เซ‡. เชชเซเชฒเช—เชฟเชจเซเชธเชจเซ‹ เชธเช‚เช—เซเชฐเชน เชชเซ‚เชฐเซ‹ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เชœเซ‡เชจเชพ เชฆเซเชตเชพเชฐเชพ cppcheck เชตเชฟเชตเชฟเชง เชตเชฟเช•เชพเชธ, เชธเชคเชค เชเช•เซ€เช•เชฐเชฃ เช…เชจเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ เชชเซเชฐเชฃเชพเชฒเซ€เช“ เชธเชพเชฅเซ‡ เชธเช‚เช•เชฒเชฟเชค เชฅเชพเชฏ เช›เซ‡, เช…เชจเซ‡ เช•เซ‹เชก เชถเซˆเชฒเซ€ เชธเชพเชฅเซ‡ เช•เซ‹เชก เชชเชพเชฒเชจ เชคเชชเชพเชธเชตเชพ เชœเซ‡เชตเซ€ เชธเซเชตเชฟเชงเชพเช“ เชชเชฃ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡. เช•เซ‹เชกเชจเซ‡ เชชเชพเชฐเซเชธ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เช•เชพเช‚ เชคเซ‹ เชคเชฎเชพเชฐเชพ เชชเซ‹เชคเชพเชจเชพ เชชเชพเชฐเซเชธเชฐเชจเซ‹ เช…เชฅเชตเชพ เช•เซเชฒเซ‡เช‚เช—เชฎเชพเช‚เชฅเซ€ เชฌเชพเชนเซเชฏ เชชเชพเชฐเซเชธเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชคเซ‡เชฎเชพเช‚ เชกเซ‡เชฌเชฟเชฏเชจ เชชเซ‡เช•เซ‡เชœเซ‹ เชฎเชพเชŸเซ‡ เชธเชนเชฏเซ‹เช—เซ€ เช•เซ‹เชก เชธเชฎเซ€เช•เซเชทเชพ เช•เชพเชฐเซเชฏ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชธเช‚เชธเชพเชงเชจเซ‹ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ donate-cpu.py เชธเซเช•เซเชฐเชฟเชชเซเชŸเชจเซ‹ เชชเชฃ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡. เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ‹ เชธเซเชคเซเชฐเซ‹เชค เช•เซ‹เชก GPLv3 เชฒเชพเชฏเชธเชจเซเชธ เชนเซ‡เช เชณ เชตเชฟเชคเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เชธเซ€เชชเซ€เชชเซ€เชšเซ‡เช•เชจเซ‹ เชตเชฟเช•เชพเชธ เช…เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค เชตเชฐเซเชคเชจ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒเซ€ เชธเชฎเชธเซเชฏเชพเช“ เช…เชจเซ‡ เชธเซเชฐเช•เซเชทเชพเชจเชพ เชฆเซƒเชทเซเชŸเชฟเช•เซ‹เชฃเชฅเซ€ เชœเซ‹เช–เชฎเซ€ เชนเซ‹เชฏ เชคเซ‡เชตเซ€ เชกเชฟเชเชพเช‡เชจเชจเชพ เช‰เชชเชฏเซ‹เช— เชชเชฐ เชงเซเชฏเชพเชจ เช•เซ‡เชจเซเชฆเซเชฐเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เชงเซเชฏเซ‡เชฏ เช–เซ‹เชŸเชพ เชนเช•เชพเชฐเชพเชคเซเชฎเช•เชจเซ‡ เช˜เชŸเชพเชกเชตเชพเชจเซ‹ เชชเชฃ เช›เซ‡. เช“เชณเช–เชพเชฏเซ‡เชฒ เชธเชฎเชธเซเชฏเชพเช“เชฎเชพเช‚: เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เชจ เชนเซ‹เชฏ เชคเซ‡เชตเชพ เชชเชฆเชพเชฐเซเชฅเซ‹เชจเชพ เชจเชฟเชฐเซเชฆเซ‡เชถเช•เซ‹, เชถเซ‚เชจเซเชฏ เชฆเซเชตเชพเชฐเชพ เชตเชฟเชญเชพเชœเชจ, เชชเซ‚เชฐเซเชฃเชพเช‚เช• เช“เชตเชฐเชซเซเชฒเซ‹, เช–เซ‹เชŸเซ€ เชฌเซ€เชŸ เชถเชฟเชซเซเชŸ เช•เชพเชฎเช—เซ€เชฐเซ€, เช–เซ‹เชŸเชพ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฃเซ‹, เชฎเซ‡เชฎเชฐเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชธเชฎเชธเซเชฏเชพเช“, STL เชจเซ‹ เช–เซ‹เชŸเซ‹ เช‰เชชเชฏเซ‹เช—, เชจเชฒ เชชเซ‹เชˆเชจเซเชŸเชฐ เชกเชฟเชฐเซ‡เชซเชฐเชจเซเชธ, เชตเชพเชธเซเชคเชตเชฟเช• เชเช•เซเชธเซ‡เชธ เชชเช›เซ€ เชšเซ‡เช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฌเชซเชฐ เชฎเชพเชŸเซ‡, เชฌเชซเชฐ เช“เชตเชฐเชฐเชจเซเชธ, เช…เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เชšเชฒเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช—.

เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃเชฎเชพเช‚:

  • เชจเซ€เชšเซ‡เชจเซ€ เชคเชชเชพเชธเซ‹ เชตเชฟเชถเซเชฒเซ‡เชทเช• เช•เซ‹เชฐเชฎเชพเช‚ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡:
    • เชซเช‚เช•เซเชถเชจ เชฌเซ‹เชกเซ€เชฎเชพเช‚ เชฐเซ€เชŸเชฐเซเชจ เช“เชชเชฐเซ‡เชŸเชฐเชจเซ€ เช—เซ‡เชฐเชนเชพเชœเชฐเซ€;
    • เช“เชตเชฐเชฒเซ‡เชชเชฟเช‚เช— เชกเซ‡เชŸเชพ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเซ‡ เช›เซ‡, เช…เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค เชตเชฐเซเชคเชจ เชจเช•เซเช•เซ€ เช•เชฐเซ‡ เช›เซ‡;
    • เชœเซ‡ เชฎเซ‚เชฒเซเชฏเชจเซ€ เชธเชฐเช–เชพเชฎเชฃเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชฐเชนเซ€ เช›เซ‡ เชคเซ‡ เชชเซเชฐเช•เชพเชฐเชจเชพ เชฎเซ‚เชฒเซเชฏเชจเซ€ เชฐเชœเซ‚เช†เชคเชจเซ€ เชฌเชนเชพเชฐ เช›เซ‡;
    • เช•เซ‰เชชเชฟ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชตเชณเชคเชฐ std::move(local);
    • เชตเชฟเชตเชฟเชง เชธเซเชŸเซเชฐเซ€เชฎเซเชธ (เชธเซเชŸเซเชฐเซ€เชฎ) เชฎเชพเช‚ เชตเชพเช‚เชšเชตเชพ เช…เชจเซ‡ เชฒเช–เชตเชพ เชฎเชพเชŸเซ‡ เชซเชพเช‡เชฒ เชเช• เชธเชพเชฅเซ‡ เช–เซ‹เชฒเซ€ เชถเช•เชพเชคเซ€ เชจเชฅเซ€;
  • เชฏเซเชจเชฟเช•เซเชธ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฎเชพเชŸเซ‡, เชตเชฟเชตเชฟเชง เชฐเช‚เช—เซ‹เชฎเชพเช‚ เชกเชพเชฏเช—เซเชจเซ‹เชธเซเชŸเชฟเช• เชธเช‚เชฆเซ‡เชถเชพเช“ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช‰เชฎเซ‡เชฐเซเชฏเซ‹;
  • ValueFlow เชฎเชพเชŸเซ‡ เชธเชพเช‚เช•เซ‡เชคเชฟเช• เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช‰เชฎเซ‡เชฐเซเชฏเซเช‚. เชฌเซ‡ เช…เชœเชพเชฃเซเชฏเชพ เชšเชฒเซ‹ เชตเชšเซเชšเซ‡เชจเชพ เชคเชซเชพเชตเชคเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชธเชฐเชณ เชกเซ‡เชฒเซเชŸเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡;
  • เชŸเซ‹เช•เชจเซเชธ "เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค" เชจเซ€ เชธเซ‚เชšเชฟ เชฎเชพเชŸเซ‡ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชคเชพ เชจเชฟเชฏเชฎเซ‹ เชชเชฃ #include เชธเชพเชฅเซ‡ เชฎเซ‡เชณ เช–เชพเชฏ เช›เซ‡;
  • เชชเซเชธเซเชคเช•เชพเชฒเชฏ เชŸเซ‡เช— เชนเชตเซ‡ เชŸเซ‡เช— เชธเชฎเชพเชตเซ€ เชถเช•เซ‡ เช›เซ‡ , เช…เชจเซ‡ เชคเซ‡ เชฎเซเชœเชฌ เชซเซเชฐเซ€ เชซเช‚เช•เซเชถเชจเซเชธ, เชœเซ‡ เช•เชจเซเชŸเซ‡เชจเชฐ เชธเซเชตเซ€เช•เชพเชฐเซ€ เชถเช•เซ‡ เช›เซ‡ เชœเซ‡เชฎ เช•เซ‡ std::size, std:: เช–เชพเชฒเซ€, std::begin, std::end, เชตเช—เซ‡เชฐเซ‡. เช•เชจเซ‡เช•เซเชŸเชฐเซเชธ เชฎเชพเชŸเซ‡ เชฏเซ€เชฒเซเชก เช…เชฅเชตเชพ เช•เซเชฐเชฟเชฏเชพเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡;
  • เชชเซเชธเซเชคเช•เชพเชฒเชฏ เชŸเซ‡เช— เชนเชตเซ‡ เชŸเซ‡เช— เชธเชฎเชพเชตเซ€ เชถเช•เซ‡ เช›เซ‡ เช…เชจเชจเซเชฏ เชฎเชพเชฒเชฟเช•เซ€ เชงเชฐเชพเชตเชคเชพ เชธเซเชฎเชพเชฐเซเชŸ เชชเซ‹เช‡เชจเซเชŸเชฐ เชฎเชพเชŸเซ‡. เช† เชชเซเชฐเช•เชพเชฐเชจเชพ เชธเซเชฎเชพเชฐเซเชŸ เชชเซ‹เชˆเชจเซเชŸเชฐเซเชธเชจเชพ เชธเช‚เชฆเชฐเซเชญเซ‹ เชตเชฟเชถเซ‡ เชนเชตเซ‡ เชšเซ‡เชคเชตเชฃเซ€ เชœเชพเชฐเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡;
  • โ€”cppcheck-build-dir เชชเชฐเชฟเชฎเชพเชฃ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เชธเชฎเชธเซเชฏเชพ เช‰เช•เซ‡เชฒเชพเชˆ;
  • htmlreport เชนเชตเซ‡ เชฒเซ‡เช–เช• เชตเชฟเชถเซ‡เชจเซ€ เชฎเชพเชนเชฟเชคเซ€ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡ (เช—เซ€เชŸ เชฌเซเชฒเซ‡เชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡);
  • เชšเชฒเซ‹ เชตเชฟเชถเซ‡ เชตเชฟเชธเซเชคเซƒเชค เชšเซ‡เชคเชตเชฃเซ€เช“ เชœเซ‡ เชธเซเชฅเชฟเชฐ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡;
  • เชตเชฟเชถเซเชฒเซ‡เชทเช•เชจเซ€ เชธเช‚เชšเชฟเชค เชญเซ‚เชฒเซ‹ เช…เชจเซ‡ เช–เชพเชฎเซ€เช“ เชธเซเชงเชพเชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡.

เชตเชงเซเชฎเชพเช‚, เชจเชฟเชฏเชฎเซ‹ 2012, 1 เช…เชจเซ‡ 2 เชธเชฟเชตเชพเชฏ, เชฎเชฟเชถเซเชฐเชพ C 1.1 เชจเชพ เชšเซ‡เช•เซ‹, เชœเซ‡เชฎเชพเช‚ เชธเซเชงเชพเชฐเซ‹ 1.2 เช…เชจเซ‡ เชธเซเชงเชพเชฐเซ‹ 17.3เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡, เชธเช‚เชชเซ‚เชฐเซเชฃเชชเชฃเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡. เชšเซ‡เช• 1.1 เช…เชจเซ‡ 1.2 เช•เชฎเซเชชเชพเช‡เชฒเชฐ เชฆเซเชตเชพเชฐเชพ เช•เชฐเชตเชพ เช†เชตเชถเซเชฏเช• เช›เซ‡. เชšเช•เชพเชธเชฃเซ€ 17.3 เชœเซ€เชธเซ€เชธเซ€ เชœเซ‡เชตเชพ เช•เชฎเซเชชเชพเชˆเชฒเชฐ เชฆเซเชตเชพเชฐเชพ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹