Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / VC++ 6.0 -> VC++ 2003 NET / 5 сообщений из 5, страница 1 из 1
17.05.2007, 09:15
    #34531225
VirtualMan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VC++ 6.0 -> VC++ 2003 NET
Есть проект на VC++ 6, в нём класс, наследуемый от MFC CString
но при попытке конвертировать его в VC++ 2003 NET "родитель" подменяется чем-то непотребным.
Отсюда и ошибки при компиляции.
Есть какое-нибудь нормальное решение, кроме перелопачивания всего проекта?
Спасибо.
...
Рейтинг: 0 / 0
17.05.2007, 12:58
    #34532184
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VC++ 6.0 -> VC++ 2003 NET
VirtualMan пишет:

> Есть проект на VC++ 6, в нём класс, наследуемый от MFC CString
> но при попытке конвертировать его в VC++ 2003 NET "родитель" подменяется
> чем-то непотребным.

Шаблоном они сделали CString, от базового символа. От TCHAR-а.
Потому что он теперь вынесен для общего использования в WTL и ATL

> Отсюда и ошибки при компиляции.
> Есть какое-нибудь нормальное решение, кроме перелопачивания всего проекта?

Зависит от ошибок.

На самом деле там совместимость сохраняется полностью,
я вот сам только что скомпилил старый проект - все ОК.
Так что думаю у вас там у самого не все слава богу.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.05.2007, 15:04
    #34535997
VirtualMan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VC++ 6.0 -> VC++ 2003 NET
Хорошо, тогда кокретно
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
class CStringEx: public CString
{
....
....
void Function(void)
 {
   //тут пытаюсь получить доступ к m_pchData и получаю ошибку [error C2065: 'm_pchData' :undeclared identifier]

   LPTSTR lpsz = _tcschr(m_pchData + startpos, (_TUCHAR)ch);
 }
}

P.S. Вопрос интересует чисто академически, так как я уже переписал чать проекта.
...
Рейтинг: 0 / 0
18.05.2007, 17:31
    #34536596
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VC++ 6.0 -> VC++ 2003 NET
VirtualMan пишет:

> class CStringEx: public CString
> //тут пытаюсь получить доступ к m_pchData и получаю ошибку [error C2065: 'm_pchData' :undeclared identifier]
> LPTSTR lpsz = _tcschr(m_pchData + startpos, (_TUCHAR)ch);

> P.S. Вопрос интересует чисто академически, так как я уже переписал чать

Чисто академически :

private:
PXSTR m_pszData;



А можно было бы написать...

LPTSTR lpsz = _tcschr(LPСTSTR(*this) + startpos, (_TUCHAR)ch);
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.05.2007, 17:41
    #34536624
VirtualMan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VC++ 6.0 -> VC++ 2003 NET
авторНа самом деле там совместимость сохраняется полностью,
я вот сам только что скомпилил старый проект - все ОК.
Так что думаю у вас там у самого не все слава богу.

Если в VC 6 все компилируется и собирается без ошибок, а в 2003 NEТ, то совместимостью как-то не пахнет.
Впрочем проект прилагаю.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / VC++ 6.0 -> VC++ 2003 NET / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]