Ответ 1
Это a wchar_t
литерал, для расширенного набора символов. Wikipedia имеет небольшое обсуждение этой темы и примеры С++.
this->textBox1->Name = L"textBox1";
Хотя он работает без L
, в чем цель префикса? То, как он используется, даже не имеет смысла для программиста на жестком языке C.
Это a wchar_t
литерал, для расширенного набора символов. Wikipedia имеет небольшое обсуждение этой темы и примеры С++.
'L' означает wchar_t
, который, в отличие от нормального символа, требует 16 бит хранения, а не 8 бит. Вот пример:
"A" = 41
"ABC" = 41 42 43
L"A" = 00 41
L"ABC" = 00 41 00 42 00 43
A wchar_t
в два раза больше, чем просто char. В ежедневном использовании вам не нужно использовать wchar_t, но если вы используете windows.h, вам это понадобится.
Это означает, что текст хранится как wchar_t
символы, а не простые старые символы char
.
(я изначально сказал, что это означает unicode. Я ошибался, но его можно использовать для unicode.)
Это означает массив широких символов (wchar_t
) вместо узких символов (char
).
Это просто строка другого типа символов, не обязательно строка Unicode.
Это означает, что это широкий символ, wchar_t
.
Аналогично 1L
является длинным значением.
L - префикс, используемый для широких строк. Каждый символ использует несколько байтов (в зависимости от размера wchar_t
). Используемая кодировка не зависит от этого префикса. Я имею в виду, что это не обязательно обязательно UTF-16, в отличие от других ответов здесь.