Каким типом является Система. Байт [*]

Я передаюсь объект, который возвращает "Систему. Байт [*]" при преобразовании в строку. Это, по-видимому, не стандартный одномерный массив объектов Байта ("Система. Байт []"), поэтому что это?

6
задан Jimbo 16 March 2010 в 14:32
поделиться

2 ответа

Вероятно, это одномерный массив с ненулевым основанием.

Вот пример того, как его создать:

using System;

class Test
{
    static void Main()
    {
        Array nonZeroBase = Array.CreateInstance
           (typeof(byte), new int[]{1}, new int[]{2});
        Console.WriteLine(nonZeroBase); // Prints byte[*]
    }
}

В терминологии CLR это называется массив (прямоугольные массивы также являются массивами), а одномерные массивы с отсчетом от нуля называются векторы . (Однако многомерный массив будет напечатан как byte [,] .)

Возможно, вас заинтересует это сообщение в блоге , которое Марк Грейвелл опубликовал только утром ...

7
ответ дан 17 December 2019 в 00:07
поделиться

Насколько я помню, в C # нет типа ... [*] . Возможно, вы найдете документацию по API для этой библиотеки, которая покажет вам, что это за тип на самом деле. Даже если у вас его нет, Visual Studio должна показать вам тип при попытке автозаполнения для метода, возвращающего объект.

0
ответ дан 17 December 2019 в 00:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: