最近、私は Web プログラミングだけを使用した後で C++ を学んでいます。これまでのところ、cplusplus のチュートリアルではうまく機能しています。私が頭を悩ませていることの 1 つは、データ構造内のオブジェクトを参照するポインターの使用です。基本的:
string mystr;
movies_t amovie; // create new object amovie from structure movies_t
movies_t* pmovie; // create a new pointer with type movies_t
pmovie = &amovie; // reference address of new object into pointer
cout << "Enter movie title: ";
getline(cin, pmovie->title);
cout << "Enter year: ";
getline (cin, mystr);
(stringstream) mystr >> pmovie->year;
cout << endl << "You have entered:" << endl;
cout << pmovie->title;
cout << " (" << pmovie->year << ")" << endl;
次のように簡単に記述できます。
string mystr;
movies_t amovie;
cout << "Enter movie title: ";
getline(cin, amovie.title);
cout << "Enter year: ";
getline(cin, mystr);
(stringstream) mystr >> amovie.year;
cout << endl << "You have entered:" << endl;
cout << amovie.title;
cout << " (" << amovie.year << ")" << endl;
配列での使用は理解していますが、構造体から値自体を参照するよりもポインターを使用する方が望ましい理由を理解するのに苦労しています。