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


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

Re: Differences between C and C++

From Muttley@dastardlyhq.com
Newsgroups comp.lang.c++
Subject Re: Differences between C and C++
Date 2022-07-28 15:11 +0000
Organization Aioe.org NNTP Server
Message-ID <tbu8us$t6b$1@gioia.aioe.org> (permalink)
References <tbm4vp$obp$1@gioia.aioe.org> <b406eff3-fcba-455b-af1a-4b422f2c088en@googlegroups.com> <tbtbp4$1hq3$1@gioia.aioe.org> <xuuEK.570267$J0r9.138756@fx11.iad> <jkffqcFbbplU1@mid.individual.net>

Show all headers | View raw


On Thu, 28 Jul 2022 15:04:12 +0200
Bo Persson <bo@bo-persson.se> wrote:
>On 2022-07-28 at 13:33, Richard Damon wrote:
>> On 7/28/22 2:53 AM, Juha Nieminen wrote:
>>> Paul N <gw7rib@aol.com> wrote:
>>>> For example, in C, a = b + c is a straight-forward addition, though 
>>>> depending on the types it might be a floating-point addition or it 
>>>> might involve a hidden multiplication by a pointer size. In C++, a = 
>>>> b + c could be anything - for instance, it might concatenate two 
>>>> files to form a third one, involving thousands of disk accesses.
>>>
>>> If the types of a, b and c are the same as in the C code, then it cannot
>>> "be anything". I'm not aware of operator overloading being possible for
>>> basic types in C++.
>>>
>>> As you say, even in C, if you don't know what the types are, you don't
>>> know what operation that is actually doing. Could be pointer arithmetic
>>> for all we know. Knowing the types is kind of crucial to understand
>>> what's being done there.
>> 
>> The difference is that in C, if you see in the code a + b, then you KNOW 
>> that a and b need to be primitive types and the operation will be just a 
>> couple of operations long (the WORSE it can be is a floating point 
>> addition).
>> 
>> In C++, we don't have that knowledge, and we need to think about what 
>> the types actually are and what that means for the code.
>
>Yes, but if I have
>
>std::string full_name = first_name + last_name;
>
>I wouldn't expect a floating point addition.

Unfortunately even in C++ 2020 that won't compile unless first_name is a
string and won't work if its char* due to precendence rules. It would be nice 
if a solution was found so C++ did a silent conversion of char* in this sort of
situation instead of having to do std::string(first_name) which is ugly and
inefficient. Maybe something like:

std::string (s = "hello") + "world";

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


Thread

Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-25 13:14 +0000
  Re: Differences between C and C++ "Alf P. Steinbach" <alf.p.steinbach@gmail.com> - 2022-07-25 16:18 +0200
  Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-07-25 18:47 +0300
    Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-07-25 19:49 +0300
      Re: Differences between C and C++ Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-07-25 19:38 +0100
  Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-25 08:51 -0700
  Re: Differences between C and C++ Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-07-25 17:14 +0100
    Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-25 16:19 +0000
      Re: Differences between C and C++ Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-07-25 19:28 +0100
      Re: Differences between C and C++ Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-07-25 12:21 -0700
        Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-26 07:54 +0000
          Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-26 08:00 +0000
            Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-26 08:09 +0000
              Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-26 02:42 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-26 15:29 +0000
                Re: Differences between C and C++ scott@slp53.sl.home (Scott Lurndal) - 2022-07-26 16:30 +0000
                Re: Differences between C and C++ Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-07-26 11:59 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-27 07:52 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-27 01:56 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-27 14:51 +0000
                Re: Differences between C and C++ Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-07-27 11:11 -0700
    Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-26 06:09 +0000
      Re: Differences between C and C++ Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-07-27 17:33 +0100
  Re: Differences between C and C++ Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2022-07-25 17:45 +0100
  Re: Differences between C and C++ Paul N <gw7rib@aol.com> - 2022-07-27 10:09 -0700
    Re: Differences between C and C++ Bo Persson <bo@bo-persson.se> - 2022-07-27 19:28 +0200
      Re: Differences between C and C++ Paul N <gw7rib@aol.com> - 2022-07-27 11:43 -0700
        Re: Differences between C and C++ David Brown <david.brown@hesbynett.no> - 2022-07-29 18:04 +0200
          Re: Differences between C and C++ Richard Damon <Richard@Damon-Family.org> - 2022-07-29 18:47 -0400
            Re: Differences between C and C++ David Brown <david.brown@hesbynett.no> - 2022-07-30 14:08 +0200
      Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-28 08:03 +0000
        Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-28 01:57 -0700
          Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-28 09:04 +0000
    Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-28 06:53 +0000
      Re: Differences between C and C++ Richard Damon <Richard@Damon-Family.org> - 2022-07-28 07:33 -0400
        Re: Differences between C and C++ Bo Persson <bo@bo-persson.se> - 2022-07-28 15:04 +0200
          Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-28 15:11 +0000
            Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-07-28 20:03 +0300
              Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-29 07:56 +0000
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-07-29 12:03 +0300
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-29 09:28 +0000
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-29 12:27 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-29 05:43 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-29 14:14 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-29 08:25 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-29 15:48 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-29 13:12 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-30 09:28 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-30 03:39 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-30 14:23 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-30 19:07 -0700
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-31 07:22 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-31 06:07 -0700
                Re: Differences between C and C++ muttley@dastardlyhq.com - 2022-07-31 16:36 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-08-01 01:12 -0700
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-29 22:47 +0000
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-30 03:48 -0700
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-07-29 05:16 -0700
                Re: Differences between C and C++ Manfred <noname@add.invalid> - 2022-07-30 02:14 +0200
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-07-31 14:39 +0000
                Re: Differences between C and C++ "Fred. Zwarts" <F.Zwarts@KVI.nl> - 2022-07-31 18:49 +0200
                Re: Differences between C and C++ Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2022-07-31 14:49 -0700
                Re: Differences between C and C++ Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-07-31 17:03 -0700
                Re: Differences between C and C++ Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2022-08-01 00:16 -0700
                Re: Differences between C and C++ Ike Naar <ike@sdf.org> - 2022-08-01 07:27 +0000
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-08-01 10:47 +0300
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-08-01 10:34 +0300
                Re: Differences between C and C++ Manfred <noname@add.invalid> - 2022-08-03 01:20 +0200
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-08-03 07:59 +0000
                Re: Differences between C and C++ Bo Persson <bo@bo-persson.se> - 2022-08-03 12:45 +0200
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-08-03 10:53 +0000
                Re: Differences between C and C++ Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2022-08-03 03:58 -0700
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-08-03 14:49 +0300
                Re: Differences between C and C++ Öö Tiib <ootiib@hot.ee> - 2022-08-03 23:31 -0700
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-08-01 11:29 +0000
                Re: Differences between C and C++ Bo Persson <bo@bo-persson.se> - 2022-08-01 14:39 +0200
                Re: Differences between C and C++ Juha Nieminen <nospam@thanks.invalid> - 2022-08-02 05:43 +0000
                Re: Differences between C and C++ Manfred <noname@add.invalid> - 2022-08-03 01:13 +0200
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-08-03 09:34 +0300
              Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-29 09:22 +0000
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-07-29 13:53 +0300
                Re: Differences between C and C++ Paavo Helde <eesnimi@osa.pri.ee> - 2022-07-29 14:13 +0300
                Re: Differences between C and C++ Muttley@dastardlyhq.com - 2022-07-29 14:11 +0000
        Re: Differences between C and C++ Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2022-07-28 06:16 -0700

csiph-web