On 21 May 2017 at 14:29, Murray Cumming <murr...@murrayc.com> wrote:

>
> We've already used move/r-value-references in several places, but not
> for string arguments.
>
> I guess we might start taking std::string_view with C++17 instead of
> std::string and this might largely take care of this.
> <http://www.murrayc.com>



I don't see how string_view would make any difference to whether or not we
end up copying strings. Can it?

Separately, how would string_view interact with Glib::ustring? Glancing at
the available documentation, my guess is "it wouldn't", since it seems to
be based on fixed-width characters, not to be context-sensitive. So it may
not be a suitable replacement for ustring.


The more basic point from the latter question is that it's unbelievable we
still don't have a real Unicode string type in C+ itself. I guess now that
we're finally getting things like standardised filesystem and networking
support, surely adequate Unicode handling can't be too far behind... I also
note with interest the prospective graphics library, which was to be based
on Cairo last time I looked.


Anyway, I think the ability to move strings or anything else in most cases
will ultimately depend on the C libraries, and I think they rule it out.
It's probably ultimately unimportant; I just tend to hate passing strings
around in my own code and try to forward-then-move them all the way
(leading to some private APIs that are probably horrifying to purists) so
this idea came into my head and had to be typed out. :)
_______________________________________________
gtkmm-list mailing list
gtkmm-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtkmm-list

Reply via email to