Всем добрый день. Прошу, откликнитесь те, кто сможет помочь. Дана функция WCHAR* Fill (WHCHAR, DWORD), которая должна сгенерировать Юникод-строку количеством DWORD символов WCHAR, и эту строку нужно вывести через MessageBox с помощью указателя на строку. Как нужно задать параметры (количество и конкретный символ) в функции и как реализовать указатель на строку, который нужно передать в качестве параметра MessageBox для её отображения?
Непонятно что функция возвращает.
Если она не создает новую строку, то просто массив создать и передать в обе.
wchar_t str[255] = {0};
UPD: а, первый параметр это один символ? Тогда это странная функция, в С обычно принято, что кто выделяет память, тот и освобождает.
Но тогда видимо так:
WCHAR* str = Fill(L'a', 255);
MessageBox(..., str, ...);
Это из задания для зачёта, и изначально синтаксис функции, исходя из условия, был таков: LPWCHAR Fill (WCHAR, DWORD), но тип LPWCHAR Visual вообще не воспринимает
Так ссылку приводил выше
Вот оригинал статьи.
И дополнительно по теме не удается создать экземпляр абстрактного класса (C2259 в VS)
Так тут вроде ни классы, ни СОМ не просят
Оригинал без гуглоперевода: windows - Beginning C++ problem; cannot instantiate abstract class (C2259 in VS) - Stack Overflow
Тут Unicode strings просят.
Нашел несколько примеров с более-менее описанием:
Strings in Windows API
Правда с инклюдами они там перестраховались, windows.h не обязателен при явном включении wchar.h