Как мне указать буфер фиксированного размера в C ++ / CLI? - PullRequest
5 голосов
/ 26 января 2010

В C # я могу указать буфер фиксированного размера , используя ключевое слово fixed, например:

public unsafe struct StructWithFixedBuffer
{
    public fixed char FixedBuffer[128];
}

как бы я выразил то же самое в C ++ / CLI?

Ответы [ 3 ]

9 голосов
/ 14 февраля 2011

В одном из блогов разработчиков C ++ / CLI был код для шаблонного решения, я постараюсь найти ссылку.

Ааа, нашел его. Это называется inline_array.

2 голосов
/ 26 января 2010

Синтаксис C # был добавлен как способ выражения синтаксиса C ++, который вы знаете всегда. :)

public:
    wchar_t FixedBuffer[128];
1 голос
/ 26 января 2010

Цитата:

размер массива из 128 элементов составляет 256 байт. Символьные буферы фиксированного размера всегда занимают два байта на символ, независимо от кодировки.

Итак, вы хотите:

struct StructWithFixedBuffer
{
    char FixedBuffer[128*2];
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...