2011-06-26 14 views
6

Czy to poprawne:Ćwiczenia: wskaźniki i referencje w C++

a) wskaźnik p1 do char:

char* p1; 

b) stały wskaźnik p2 do char:

char* const p2; 

c) wskaźnik p3 do stałej char:

const char* p3; 

d) stały wskaźnik P4 stałej Znak:

const char* const p4; 

e) R1 odniesienia char:

char & r1; 

f) R2 odniesienia do stałej Znak:

const char& r2; 

Czy chcesz powiadomić mnie o błędach?

+1

Wszystko poprawnie. Ale dla C) wolę (i jego rzecz preferencji) 'char const * p3;' Jeśli czytasz od lewej, aby pisać teraz, to pasuje do pytania. Podobnie jak w przypadku D) 'char const * const p4;' F) 'char const & r2;' –

Odpowiedz

4

Wszystkie są poprawne. Nie widzę żadnych błędów :-)

3

żadnych błędów, wszystko jest w porządku).

+0

+1: @laika: Wszystko jest poprawne, z wyjątkiem tego, że niektóre z twoich deklaracji są nielegalne, ponieważ wymagają inicjalizatora. Ale nie sądzę, żeby to miało znaczenie –

2

Wszystko wygląda poprawnie. Regułą do użycia w C/C++ jest czytanie od prawej do lewej. Na przykład: const char * p jest wskaźnikiem (*) do znaku stałego/stałego.