宣言と定義

プログラミング言語C++』
 4.9 宣言

宣言:declarationの大半は、定義:definitionでもある。


名前の定義を「宣言」といい
名前が参照する実体の定義を「定義」という

でいいのかな

// 宣言・定義
char   c;
int    value;
string str;
char*  name = "abc";
struct person { int age; string name; };
int disp() { cout << "Hello" << endl; }
enum Color {Red, Blue, Green};
typedef vector<int> nvector;

// 宣言
extern int number;
double sqrt(double);
struct hoge;


これは宣言?...ヌルポインタを参照する実体と呼べるのであればこれは「定義」のはず

char* p;