How do I specify a fixed-size buffer in C++/CLI?

前端 未结 3 1612
终归单人心
终归单人心 2020-12-19 08:11

In C#, I can specify a fixed sized buffer using the fixed keyword, like so:

public unsafe struct StructWithFixedBuffer
{
    public fixed char F         


        
相关标签:
3条回答
  • 2020-12-19 08:15

    One of the C++/CLI developer blogs had code for a template solution to this, I'll try to find a link.

    Ahh, found it. It's called inline_array.

    0 讨论(0)
  • 2020-12-19 08:32

    Quote:

    size of the 128 element char array is 256 bytes. Fixed size char buffers always take two bytes per character, regardless of the encoding.

    So you want:

    struct StructWithFixedBuffer
    {
        char FixedBuffer[128*2];
    };
    
    0 讨论(0)
  • 2020-12-19 08:36

    The C# syntax was added as a way to express the C++ syntax you've know forever. :)

    public:
        wchar_t FixedBuffer[128];
    
    0 讨论(0)
提交回复
热议问题