/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
gcc 3.0 og const member pointer
Fra : Per Abrahamsen


Dato : 20-06-01 18:09

GCC 3.0 giver en "assignment of read-only location", hvilket GCC 2.95
ikke gjorde. Borland 5.0 og Visual C++ 6.0 ud også gladeligt denne
kode. Jeg synes beskeden er ulogisk, bars er const, og dermed bliver
pointeren b også const. Men det b peger på burde ikke blive const.

Hvem har ret?

struct foo
{
int a;

struct bar
{ int foo::* b ;};

static const bar bars[];

int bad ()
{
this->*(bars[0].b) = 42; // assignment of read-only location
}
};

const foo::bar foo::bars[] = { { &foo::a } };

int main ()
{ }

 
 
Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste