Существуют ли какие-либо регрессионные тесты, написанные на C / C ++ для проверки всех функций CString (ATL / MFC)? - PullRequest
0 голосов
/ 17 декабря 2009

Я пытаюсь сравнить CString из ATL / MFC с пользовательской реализацией CString, и я хочу убедиться, что все функциональные возможности в пользовательской реализации соответствуют функциональным возможностям реализации ATL / MFC.

Причина, по которой у нас есть собственная реализация CString, заключается в том, что мы можем использовать ее на * nix и платформах Windows. Интерфейс такой же, но реализация другая, поэтому, когда мы переносим наш код Windows для использования SDK, который мы пишем, нам не нужно менять ВСЕ имена ... нам нужно только разобраться в различиях между этими двумя реализации.

Любая помощь по этому вопросу будет принята с благодарностью. Спасибо!

Ответы [ 2 ]

1 голос
/ 17 декабря 2009

Лично я не могу думать ни о чем. Однако, если бы я делал это, я бы закодировал все варианты использования, которые у меня есть, и удостоверился, что у меня есть тест для его покрытия.

Также в Windows вы делегируете поставляемую реализацию или свою собственную? Если вы делегировали полномочия, вы могли бы найти свои тесты более полезными, поскольку они могли бы выделить различия.

Удачи,

0 голосов
/ 09 августа 2011

CString предоставляет целый ряд шаблонных и операторских перегрузок, которые он унаследовал от ATLCStringT. Чтобы иметь возможность использовать алгоритмы или структуры ATL, вам необходимо реализовать все (CMAP). Однако, если вы используете его как базовую оболочку char *, у вас все будет в порядке.

Обратите внимание, что CString более оптимален при компиляции в Visual Studio, чем стандартный std :: string.

...