Hot to express "Int16[] myInt16Array = new Int16[5];" in Qt?

  • C# Code:
    Int16[] myInt16Array = new Int16[5];

    Hot to express the code in Qt?

  • Lifetime Qt Champion


    It's nothing Qt specific, it's a C++ question. Here you have a good explanation about dynamic allocation.

    However depending on what you want to do with your array, you could just use a QVector<qint16> so no need for dynamic allocation, just put your ints in it.

    Hope it helps

  • @SGaist
    I thought you mean the two way:

    Method 1:
    QList<qint16> myInt16Array;

    Method 2:
    qint8 *myInt16Array;
    myInt16Array=new qint8[5];

  • @SGaist
    If my C# code look like below:

        byte[] mybyte = { };
        if (bWriteBmp)
            Bitmap mybmp = this.DrawBitmap(myFile, 75, 65);//<----my function
            if (mybmp!= null)
                MemoryStream ms = new MemoryStream();
                mybmp.Save(ms, ImageFormat.Bmp);
                mybyte = ms.ToArray();

    Hot to express the code in Qt?

    my C# code:
    myCheck = BitConverter.GetBytes(myValue);

    Could I alway use the below code in Qt for any types of "myCheck"?
    (ex. set qint16 "myCheck" or set qint32 "myCheck" or set int "myCheck")
    myCheck = QByteArray::fromRawData((const char *)&myValue, sizeof(myValue));

  • @mkdh You're asking to translate a C# code in C++/Qt. I suggest to study the C++ language and then move to Qt.

    In your case you can find very useful theQByteArray class.

Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.