Поделиться через


String Конструкторы

Определение

Инициализирует новый экземпляр класса String.

Перегрузки

String(Char*)

Инициализирует новый экземпляр класса String значением, указанным указанным указателем на массив символов Юникода.

String(Char[])

Инициализирует новый экземпляр класса String символами Юникода, указанными в указанном массиве символов.

String(ReadOnlySpan<Char>)

Инициализирует новый экземпляр класса String символами Юникода, указанными в указанном диапазоне только для чтения.

String(SByte*)

Инициализирует новый экземпляр класса String значением, указанным указателем на массив 8-разрядных целых чисел со знаком.

String(Char, Int32)

Инициализирует новый экземпляр класса String значением, указанным указанным символом Юникода, повторяемым заданным числом раз.

String(Char*, Int32, Int32)

Инициализирует новый экземпляр класса String значением, указанным указанным указателем на массив символов Юникода, начальную позицию символов в этом массиве и длину.

String(Char[], Int32, Int32)

Инициализирует новый экземпляр класса String значением, указанным массивом символов Юникода, начальной позицией в этом массиве и длиной.

String(SByte*, Int32, Int32)

Инициализирует новый экземпляр класса String значение, указанное указанным указателем на массив 8-разрядных целых чисел со знаком, начальную позицию в этом массиве и длину.

String(SByte*, Int32, Int32, Encoding)

Инициализирует новый экземпляр класса String значение, указанное указанным указателем на массив 8-разрядных целых чисел со знаком, начальную позицию в этом массиве, длину и объект Encoding.

Комментарии

Дополнительные сведения об этом API см. в дополнительных примечаниях API для конструктора строк.

String(Char*)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса String значением, указанным указанным указателем на массив символов Юникода.

public:
 String(char* value);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (char* value);
[System.CLSCompliant(false)]
public String (char* value);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<char> -> string
[<System.CLSCompliant(false)>]
new string : nativeptr<char> -> string

Параметры

value
Char*

Указатель на массив символов Юникода, завершающийся значением NULL.

Атрибуты

Исключения

Текущий процесс не имеет доступа на чтение ко всем адресным символам.

value указывает массив, содержащий недопустимый символ Юникода, или value задает адрес менее 64000.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(Char[])

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Инициализирует новый экземпляр класса String символами Юникода, указанными в указанном массиве символов.

public:
 String(cli::array <char> ^ value);
public String (char[] value);
public String (char[]? value);
new string : char[] -> string
Public Sub New (value As Char())

Параметры

value
Char[]

Массив символов Юникода.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(ReadOnlySpan<Char>)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Инициализирует новый экземпляр класса String символами Юникода, указанными в указанном диапазоне только для чтения.

public:
 String(ReadOnlySpan<char> value);
public String (ReadOnlySpan<char> value);
new string : ReadOnlySpan<char> -> string
Public Sub New (value As ReadOnlySpan(Of Char))

Параметры

value
ReadOnlySpan<Char>

Диапазон символов Юникода только для чтения.

Применяется к

String(SByte*)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса String значением, указанным указателем на массив 8-разрядных целых чисел со знаком.

public:
 String(System::SByte* value);
[System.CLSCompliant(false)]
public String (sbyte* value);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (sbyte* value);
[<System.CLSCompliant(false)>]
new string : nativeptr<sbyte> -> string
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<sbyte> -> string

Параметры

value
SByte*

Указатель на массив целочисленных со знаком со значением NULL. Целые числа интерпретируются с помощью текущей кодовой страницы системы в Windows (называемой CP_ACP) и кодировкой UTF-8 в windows, отличной от Windows.

Атрибуты

Исключения

value null.

Новый экземпляр String не удалось инициализировать с помощью value, при условии, что value кодируется в ANSI.

Длина новой строки для инициализации, определяемая символом завершения null value, слишком велика, чтобы выделить.

value указывает недопустимый адрес.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(Char, Int32)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Инициализирует новый экземпляр класса String значением, указанным указанным символом Юникода, повторяемым заданным числом раз.

public:
 String(char c, int count);
public String (char c, int count);
new string : char * int -> string
Public Sub New (c As Char, count As Integer)

Параметры

c
Char

Символ Юникода.

count
Int32

Количество c происходит.

Исключения

count меньше нуля.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(Char*, Int32, Int32)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса String значением, указанным указанным указателем на массив символов Юникода, начальную позицию символов в этом массиве и длину.

public:
 String(char* value, int startIndex, int length);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (char* value, int startIndex, int length);
[System.CLSCompliant(false)]
public String (char* value, int startIndex, int length);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<char> * int * int -> string
[<System.CLSCompliant(false)>]
new string : nativeptr<char> * int * int -> string

Параметры

value
Char*

Указатель на массив символов Юникода.

startIndex
Int32

Начальная позиция в value.

length
Int32

Количество символов в value используемых.

Атрибуты

Исключения

startIndex или length меньше нуля, value + startIndex вызвать переполнение указателя или текущий процесс не имеет доступа на чтение ко всем адресным символам.

value указывает массив, содержащий недопустимый символ Юникода или value + startIndex указывает адрес меньше 64000.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(Char[], Int32, Int32)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Инициализирует новый экземпляр класса String значением, указанным массивом символов Юникода, начальной позицией в этом массиве и длиной.

public:
 String(cli::array <char> ^ value, int startIndex, int length);
public String (char[] value, int startIndex, int length);
new string : char[] * int * int -> string
Public Sub New (value As Char(), startIndex As Integer, length As Integer)

Параметры

value
Char[]

Массив символов Юникода.

startIndex
Int32

Начальная позиция в value.

length
Int32

Количество символов в value используемых.

Исключения

value null.

startIndex или length меньше нуля.

-или-

Сумма startIndex и length превышает количество элементов в value.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(SByte*, Int32, Int32)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса String значение, указанное указанным указателем на массив 8-разрядных целых чисел со знаком, начальную позицию в этом массиве и длину.

public:
 String(System::SByte* value, int startIndex, int length);
[System.CLSCompliant(false)]
public String (sbyte* value, int startIndex, int length);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (sbyte* value, int startIndex, int length);
[<System.CLSCompliant(false)>]
new string : nativeptr<sbyte> * int * int -> string
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<sbyte> * int * int -> string

Параметры

value
SByte*

Указатель на массив 8-разрядных целых чисел со знаком. Целые числа интерпретируются с помощью текущей кодовой страницы системы в Windows (называемой CP_ACP) и кодировкой UTF-8 в windows, отличной от Windows.

startIndex
Int32

Начальная позиция в value.

length
Int32

Количество символов в value используемых.

Атрибуты

Исключения

value null.

startIndex или length меньше нуля.

-или-

Адрес, указанный value + startIndex, слишком велик для текущей платформы; то есть вычисление адресов переполнено.

-или-

Длина новой строки для инициализации слишком велика, чтобы выделить.

Адрес, указанный value + startIndex, меньше 64 КБ.

-или-

Новый экземпляр String не удалось инициализировать с помощью value, при условии, что value кодируется в ANSI.

value, startIndexи length совместно указать недопустимый адрес.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к

String(SByte*, Int32, Int32, Encoding)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса String значение, указанное указанным указателем на массив 8-разрядных целых чисел со знаком, начальную позицию в этом массиве, длину и объект Encoding.

public:
 String(System::SByte* value, int startIndex, int length, System::Text::Encoding ^ enc);
[System.CLSCompliant(false)]
public String (sbyte* value, int startIndex, int length, System.Text.Encoding enc);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (sbyte* value, int startIndex, int length, System.Text.Encoding enc);
[<System.CLSCompliant(false)>]
new string : nativeptr<sbyte> * int * int * System.Text.Encoding -> string
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<sbyte> * int * int * System.Text.Encoding -> string

Параметры

value
SByte*

Указатель на массив 8-разрядных целых чисел со знаком.

startIndex
Int32

Начальная позиция в value.

length
Int32

Количество символов в value используемых.

enc
Encoding

Объект, указывающий, как массив, на который ссылается value, закодирован. Если encnull, предполагается кодировка ANSI.

Атрибуты

Исключения

value null.

startIndex или length меньше нуля.

-или-

Адрес, указанный value + startIndex, слишком велик для текущей платформы; то есть вычисление адресов переполнено.

-или-

Длина новой строки для инициализации слишком велика, чтобы выделить.

Адрес, указанный value + startIndex, меньше 64 КБ.

-или-

Новый экземпляр String не удалось инициализировать с помощью value, при условии, что value кодируется как указано в enc.

value, startIndexи length совместно указать недопустимый адрес.

Комментарии

Заметка

Примеры и исчерпывающие сведения об этом и других перегрузках конструктора String см. в сводке конструктора String.

Применяется к