[Interest] initialising a dictionary-type container instance with a static table?

Konstantin Shegunov kshegunov at gmail.com
Mon Jan 2 13:36:03 CET 2017


Do you mean something like this?

enum MyEnum {

    Enum1, Enum2

};


static struct _hashInit {

   _hashInit()

   {

        MyEnum myEnumTable[] = {

            Enum1, Enum2

        };


        QString myStringTable[] = {

            QStringLiteral("Enum1"), QStringLiteral("Enum2")

        };


        qint32 size = sizeof(myEnumTable) / sizeof(MyEnum);

        myHash.reserve(size);

        for (qint32 i = 0; i < size; i++)

            myHash.insert(myStringTable[i], myEnumTable[i]);

    }


    QHash<QString, MyEnum> myHash;

} _hashInitializer;
It isn't exactly pretty but should work okay.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20170102/940cc225/attachment.html>


More information about the Interest mailing list