Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Checking the API status for the variable “Private d” of the QVariant class
Forum Update on Monday, May 27th 2025

Checking the API status for the variable “Private d” of the QVariant class

Scheduled Pinned Locked Moved Unsolved General and Desktop
apiqvariantprivatedocumentationevolution
31 Posts 5 Posters 7.8k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • VRoninV VRonin

    @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

    You would occasionally prefer direct write access to the contained element.

    My point is exactly that implicit sharing removes this need

    It can take a while to get acceptance for another useful programming interface, can't it?

    And it can take even longer if it's not necessary. Move constructor/assignments are another great example of a feature introduced in the standard that is basically useless when dealing with implicitly shared classes as they do it better and seamlessly.

    E Offline
    E Offline
    elfring
    wrote on last edited by
    #19

    My point is exactly that implicit sharing removes this need

    This technique depends on the management of object reference counters which can be useful functionality and can trigger related software development challenges.

    And it can take even longer if it's not necessary.

    Do you care for improvements around generic data processing algorithms?

    VRoninV 1 Reply Last reply
    0
    • E elfring

      My point is exactly that implicit sharing removes this need

      This technique depends on the management of object reference counters which can be useful functionality and can trigger related software development challenges.

      And it can take even longer if it's not necessary.

      Do you care for improvements around generic data processing algorithms?

      VRoninV Offline
      VRoninV Offline
      VRonin
      wrote on last edited by
      #20

      @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

      This technique depends on the management of object reference counters

      Are we complaining about loss of performance due to an additional integer increment and decrement?

      Do you care for improvements around generic data processing algorithms?

      Not if they interfere heavily with my objects functionality isolation.


      Can I ask, really, what is causing your aversion to how QVariant works? The only scenario I'd imagine is if you are developing microsecond-critical applications (like automatic stock trading) but you mention you are using QStandardItemModel and the inefficiencies inside that model implementation dwarf any moot point about optimising the editing of a QVariant

      "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
      ~Napoleon Bonaparte

      On a crusade to banish setIndexWidget() from the holy land of Qt

      E 1 Reply Last reply
      4
      • VRoninV VRonin

        @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

        This technique depends on the management of object reference counters

        Are we complaining about loss of performance due to an additional integer increment and decrement?

        Do you care for improvements around generic data processing algorithms?

        Not if they interfere heavily with my objects functionality isolation.


        Can I ask, really, what is causing your aversion to how QVariant works? The only scenario I'd imagine is if you are developing microsecond-critical applications (like automatic stock trading) but you mention you are using QStandardItemModel and the inefficiencies inside that model implementation dwarf any moot point about optimising the editing of a QVariant

        E Offline
        E Offline
        elfring
        wrote on last edited by
        #21

        Are we complaining about loss of performance due to an additional integer increment and decrement?

        This can occasionally happen, can't it?

        …, what is causing your aversion to how QVariant works?

        I got special software development opinions. The QVariant class is useful. I am just looking for a few extensions there.

        … but you mention you are using QStandardItemModel …

        This is Qt standard software which provides known functionality. I would like to apply it as it would mostly be usual.

        VRoninV 1 Reply Last reply
        0
        • E elfring

          Are we complaining about loss of performance due to an additional integer increment and decrement?

          This can occasionally happen, can't it?

          …, what is causing your aversion to how QVariant works?

          I got special software development opinions. The QVariant class is useful. I am just looking for a few extensions there.

          … but you mention you are using QStandardItemModel …

          This is Qt standard software which provides known functionality. I would like to apply it as it would mostly be usual.

          VRoninV Offline
          VRoninV Offline
          VRonin
          wrote on last edited by VRonin
          #22

          @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

          This can occasionally happen, can't it?

          Can, should and will.

          I got special software development opinions.

          Forcing your opinion on the framework is possible but don't expect it to be easy.
          Forcing the framework to adopt those opinions is a titanic endeavour.

          This is Qt standard software which provides known functionality.

          True and I always suggest to use it as it's super convenient but it must be clear that it's very far from being an implementation of a model optimised for performance

          "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
          ~Napoleon Bonaparte

          On a crusade to banish setIndexWidget() from the holy land of Qt

          E 1 Reply Last reply
          2
          • VRoninV VRonin

            @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

            This can occasionally happen, can't it?

            Can, should and will.

            I got special software development opinions.

            Forcing your opinion on the framework is possible but don't expect it to be easy.
            Forcing the framework to adopt those opinions is a titanic endeavour.

            This is Qt standard software which provides known functionality.

            True and I always suggest to use it as it's super convenient but it must be clear that it's very far from being an implementation of a model optimised for performance

            E Offline
            E Offline
            elfring
            wrote on last edited by
            #23

            … I always suggest to use it as it's super convenient but it must be clear that it's very far from being an implementation of a model optimised for performance

            Will such information trigger any further software evolution?

            sierdzioS 1 Reply Last reply
            0
            • E elfring

              … I always suggest to use it as it's super convenient but it must be clear that it's very far from being an implementation of a model optimised for performance

              Will such information trigger any further software evolution?

              sierdzioS Offline
              sierdzioS Offline
              sierdzio
              Moderators
              wrote on last edited by
              #24

              @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

              … I always suggest to use it as it's super convenient but it must be clear that it's very far from being an implementation of a model optimised for performance

              Will such information trigger any further software evolution?

              That's unlikely.

              If you want performance, you have more abstract classes at your disposal, where more coding is necessary (less convenient) but more fine control over details is possible.

              (Z(:^

              E 1 Reply Last reply
              0
              • sierdzioS sierdzio

                @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                … I always suggest to use it as it's super convenient but it must be clear that it's very far from being an implementation of a model optimised for performance

                Will such information trigger any further software evolution?

                That's unlikely.

                If you want performance, you have more abstract classes at your disposal, where more coding is necessary (less convenient) but more fine control over details is possible.

                E Offline
                E Offline
                elfring
                wrote on last edited by
                #25

                If you want performance, you have more abstract classes at your disposal,

                How can they really help here?

                where more coding is necessary (less convenient) but more fine control over details is possible.

                Can it eventually help more to improve (or extend) also the implementation of the class “QVariant”?

                sierdzioS 1 Reply Last reply
                0
                • E elfring

                  If you want performance, you have more abstract classes at your disposal,

                  How can they really help here?

                  where more coding is necessary (less convenient) but more fine control over details is possible.

                  Can it eventually help more to improve (or extend) also the implementation of the class “QVariant”?

                  sierdzioS Offline
                  sierdzioS Offline
                  sierdzio
                  Moderators
                  wrote on last edited by
                  #26

                  @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                  If you want performance, you have more abstract classes at your disposal,

                  How can they really help here?

                  where more coding is necessary (less convenient) but more fine control over details is possible.

                  Can it eventually help more to improve (or extend) also the implementation of the class “QVariant”?

                  Feel free to improve QVariant, if you have the means. Qt is an open project, if your contribution is judged beneficial, it will be included upstream.

                  (Z(:^

                  E 1 Reply Last reply
                  0
                  • sierdzioS sierdzio

                    @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                    If you want performance, you have more abstract classes at your disposal,

                    How can they really help here?

                    where more coding is necessary (less convenient) but more fine control over details is possible.

                    Can it eventually help more to improve (or extend) also the implementation of the class “QVariant”?

                    Feel free to improve QVariant, if you have the means. Qt is an open project, if your contribution is judged beneficial, it will be included upstream.

                    E Offline
                    E Offline
                    elfring
                    wrote on last edited by
                    #27

                    Feel free to improve QVariant, if you have the means.

                    How do you think about to support the addition of a member function like “(std::)get”?

                    sierdzioS 1 Reply Last reply
                    0
                    • E elfring

                      Feel free to improve QVariant, if you have the means.

                      How do you think about to support the addition of a member function like “(std::)get”?

                      sierdzioS Offline
                      sierdzioS Offline
                      sierdzio
                      Moderators
                      wrote on last edited by
                      #28

                      @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                      Feel free to improve QVariant, if you have the means.

                      How do you think about to support the addition of a member function like “(std::)get”?

                      I'm not a Qt developer. I'm not sure if STD is allowed in public Qt API. And lastly, I don't care about std::get ;-) But I may be alone in this.

                      (Z(:^

                      E 1 Reply Last reply
                      0
                      • sierdzioS sierdzio

                        @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                        Feel free to improve QVariant, if you have the means.

                        How do you think about to support the addition of a member function like “(std::)get”?

                        I'm not a Qt developer. I'm not sure if STD is allowed in public Qt API. And lastly, I don't care about std::get ;-) But I may be alone in this.

                        E Offline
                        E Offline
                        elfring
                        wrote on last edited by
                        #29

                        And lastly, I don't care about std::get

                        Will you care more for recent software extensions from the standard “ISO/IEC 14882” in the near future?

                        sierdzioS 1 Reply Last reply
                        0
                        • E elfring

                          And lastly, I don't care about std::get

                          Will you care more for recent software extensions from the standard “ISO/IEC 14882” in the near future?

                          sierdzioS Offline
                          sierdzioS Offline
                          sierdzio
                          Moderators
                          wrote on last edited by
                          #30

                          @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                          And lastly, I don't care about std::get

                          Will you care more for recent software extensions from the standard “ISO/IEC 14882” in the near future?

                          What does that have to do with this topic? Are you interviewing me for a job now or something? :-)

                          Sorry mate but I see no point in continuing this conversation.

                          (Z(:^

                          E 1 Reply Last reply
                          2
                          • sierdzioS sierdzio

                            @elfring said in Checking the API status for the variable “Private d” of the QVariant class:

                            And lastly, I don't care about std::get

                            Will you care more for recent software extensions from the standard “ISO/IEC 14882” in the near future?

                            What does that have to do with this topic? Are you interviewing me for a job now or something? :-)

                            Sorry mate but I see no point in continuing this conversation.

                            E Offline
                            E Offline
                            elfring
                            wrote on last edited by
                            #31

                            Sorry mate but I see no point in continuing this conversation.

                            Some software developers agreed that they need the class “variant” for working with type-safe unions. They chose another useful programming interface. These software design decisions might influence other class libraries, don't they?

                            The Qt software library is using also a variant class for the support of the meta-object protocol, isn't it?

                            1 Reply Last reply
                            0

                            • Login

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • Users
                            • Groups
                            • Search
                            • Get Qt Extensions
                            • Unsolved