Для обычной функции можно написать следующее
CHAR * fxA (CHAR *pszParam);
WCHAR * fxW (WCHAR *pszParam);
#ifdef _UNICODE
#define fx fxW
#else
#define fx fxA
#endif
При вызове fx будет непосредственно подставляться нужная функция (в зависимости от _UNICODE).
А как подобное сделать для класса?
class A
{
public:
CHAR * fxA (CHAR *pszParam);
WCHAR * fxW (WCHAR *pszParam);
}
Вариант
TCHAR * A::fx (TCHAR *pszParam)
{
#ifdef _UNICODE
return fxW (pszParam);
#else
return fxA (pszParam);
#endif
}
не подходит, т.к. получается лишний вызов. А есть ли варнты без него?