Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c++ > #123725

Re: Move semantics with literals

From David Brown <david.brown@hesbynett.no>
Newsgroups comp.lang.c++
Subject Re: Move semantics with literals
Date 2026-04-14 17:26 +0200
Organization A noiseless patient Spider
Message-ID <10rlmc0$5jbr$1@dont-email.me> (permalink)
References <10rlkk9$6hau$1@dont-email.me> <87jyu960xp.fsf@posteo.de> <87fr4x60ig.fsf@posteo.de>

Show all headers | View raw


On 14/04/2026 17:10, Jonathan Lamothe wrote:
> Jonathan Lamothe <jonathan@jlamothe.net> writes:
> 
>> boltar@caprica.universe writes:
>>
>>> To my chagrin I got caught out by this trick question in an interview:
>>>
>>> int func(int &&a)
>>> {
>>>          return a * 2;
>>> }
>>>
>>>
>>> :
>>>          int b = func(123);
>>> :
>>>
>>> Where the question was "what would happen". I assumed it wouldn't compile
>>> being a reference to a literal but it does. So I'm just wondering why on
>>> earth and when would you ever do the above? Is there some wierd use case?
>>
>> The only use case I can see is tricky interview questions.  ;)
> 
> More seriously though, I'm not sure off-hand, but this feels like a case
> of undefined behaviour.  At any rate, it's terrible for the clarity of
> the code, which I try to prioritize.
> 

As far as I understand it, it is fully defined behaviour.  The value 123 
is a temporary, and exists until the expression containing it is fully 
evaluated.  (If I am wrong here, hopefully someone will correct me!)

rvalue references are not much use for simple types like "int".  They 
become useful with bigger types.  But it would be very strange for the 
standards to say you could /only/ use them for big types.

> I hate it when job interview questions don't actually reflect the kind
> of work you'll be expected to do.  Though, if this *is* the
> expectation... bullet dodged, I guess?
> 

Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Move semantics with literals boltar@caprica.universe - 2026-04-14 14:57 +0000
  Re: Move semantics with literals Jonathan Lamothe <jonathan@jlamothe.net> - 2026-04-14 11:01 -0400
    Re: Move semantics with literals wij <wyniijj5@gmail.com> - 2026-04-14 23:04 +0800
    Re: Move semantics with literals Jonathan Lamothe <jonathan@jlamothe.net> - 2026-04-14 11:10 -0400
      Re: Move semantics with literals David Brown <david.brown@hesbynett.no> - 2026-04-14 17:26 +0200
      Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-14 18:25 +0200
        Re: Move semantics with literals Jonathan Lamothe <jonathan@jlamothe.net> - 2026-04-14 13:02 -0400
        Re: Move semantics with literals boltar@caprica.universe - 2026-04-15 08:18 +0000
          Re: Move semantics with literals Paavo Helde <eesnimi@osa.pri.ee> - 2026-04-15 12:50 +0300
          Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-15 14:24 +0200
            Re: Move semantics with literals boltar@caprica.universe - 2026-04-15 15:07 +0000
              Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-15 17:49 +0200
              Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-15 17:51 +0200
                Re: Move semantics with literals boltar@caprica.universe - 2026-04-16 08:29 +0000
                Re: Move semantics with literals scott@slp53.sl.home (Scott Lurndal) - 2026-04-16 14:41 +0000
                Re: Move semantics with literals Chris Ahlstrom <OFeem1987@teleworm.us> - 2026-04-18 06:41 -0400
              Re: Move semantics with literals Richard Damon <Richard@Damon-Family.org> - 2026-04-18 12:46 -0400
            Re: Move semantics with literals "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-15 23:08 -0700
              Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-16 09:02 +0200
                Re: Move semantics with literals "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-16 04:39 -0700
    Re: Move semantics with literals boltar@caprica.universe - 2026-04-14 15:10 +0000
      Re: Move semantics with literals Jonathan Lamothe <jonathan@jlamothe.net> - 2026-04-14 11:15 -0400
      Re: Move semantics with literals scott@slp53.sl.home (Scott Lurndal) - 2026-04-14 17:17 +0000
        Re: Move semantics with literals Jonathan Lamothe <jonathan@jlamothe.net> - 2026-04-14 13:36 -0400
          Re: Move semantics with literals boltar@caprica.universe - 2026-04-15 08:21 +0000
      Re: Move semantics with literals Andrey Tarasevich <noone@noone.net> - 2026-04-18 10:16 -0700
        Re: Move semantics with literals boltar@caprica.universe - 2026-04-19 08:59 +0000
          Re: Move semantics with literals boltar@caprica.universe - 2026-04-19 09:09 +0000
          Re: Move semantics with literals Andrey Tarasevich <noone@noone.net> - 2026-04-19 12:01 -0700
  Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-14 17:14 +0200
    Re: Move semantics with literals boltar@caprica.universe - 2026-04-14 15:23 +0000
      Re: Move semantics with literals Bonita Montero <Bonita.Montero@gmail.com> - 2026-04-14 18:23 +0200
  Re: Move semantics with literals Andrey Tarasevich <noone@noone.net> - 2026-04-18 09:27 -0700
    Re: Move semantics with literals Andrey Tarasevich <noone@noone.net> - 2026-04-18 09:46 -0700

csiph-web