eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingStroustrup o C++ › Re: Stroustrup o C++
  • X-Received: by 2002:a0c:b622:: with SMTP id f34mr193223qve.1.1547492009846; Mon, 14
    Jan 2019 10:53:29 -0800 (PST)
    X-Received: by 2002:a0c:b622:: with SMTP id f34mr193223qve.1.1547492009846; Mon, 14
    Jan 2019 10:53:29 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net
    !2.eu.feeder.erje.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.co
    m!border1.nntp.dca1.giganews.com!nntp.giganews.com!v55no7144074qtk.0!news-out.g
    oogle.com!m21ni4294qta.0!nntp.google.com!v55no7144067qtk.0!postnews.google.com!
    glegroupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Mon, 14 Jan 2019 10:53:29 -0800 (PST)
    In-Reply-To: <q1ie6b$cg$1@gioia.aioe.org>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=217.97.102.83;
    posting-account=VFwkXwoAAADdT4-lLKRZrMYkTjizGoyn
    NNTP-Posting-Host: 217.97.102.83
    References: <e...@g...com>
    <q1d5vs$pgs$1@gioia.aioe.org>
    <e...@g...com>
    <c...@g...com>
    <q1f5pu$1b58$1@gioia.aioe.org>
    <a...@g...com>
    <q1fpaf$4a8$1@gioia.aioe.org>
    <e...@g...com>
    <q1hjfj$1ug$1@gioia.aioe.org>
    <d...@g...com>
    <q1ie6b$cg$1@gioia.aioe.org>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <7...@g...com>
    Subject: Re: Stroustrup o C++
    From: Wojciech Muła <w...@g...com>
    Injection-Date: Mon, 14 Jan 2019 18:53:30 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Lines: 40
    Xref: news-archive.icm.edu.pl pl.comp.programming:213277
    [ ukryj nagłówki ]

    On Monday, January 14, 2019 at 5:42:54 PM UTC+1, AK wrote:
    > > O ile> w C to jeszcze Twoja propozycja miałaby sens, to w C++ jest
    > > nie do zaakceptowania, bo można przeciążać operatory. Wyrażenie
    > > "x++" może mieć inny typ niż samo "x".
    >
    > Tak?. No cos podobnego!?
    > Bo mi sie zawsze wydawalo, ze taki ++ to posiada obligatoryjne
    > sygnatury:
    > Klasa& Klasa::operator++(); // dla ++x
    > Klasa Klasa::operator++(); // dla x++

    Ciekawa kwestia. W sumie się nad tym nie zastanawiałem, ostatni
    raz przeciążałem ten operator 10 lat temu, takiż on wybitnie
    przydatny. :)

    GCC/clang/ICC/MSVC nie protestują:

    ---test.cpp---
    #include <cstdio>

    struct X {
    int operator++(int) {
    return 42;
    }

    int x;
    int y;
    int z;
    };

    int main() {
    X x;
    printf("%d %d\n", sizeof(x), sizeof(x++));
    }
    ---eof---

    Na moim systemie dostaję "12 4".

    w.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: