Melalui Rujukan atau Penunjuk dalam C : Prinsip Panduan
Dalam C , memahami bila menggunakan rujukan lulus dan bila menggunakan penunjuk adalah penting. Amalan ini boleh membawa kepada kod yang cekap dan bebas ralat.
Situasi Umum
Meluluskan std::string ke fungsi:
Meluluskan tr1::shared_ptr ke fungsi:
Petunjuk lwn. Rujukan
Melalui rujukan menawarkan ketekalan, kerana setiap objek boleh dianggap sebagai rujukan. Walau bagaimanapun, melalui penuding memberikan fleksibiliti untuk mengendalikan nullptrs dan literal.
Analisis Coretan
Coretan yang diberikan:
map<string, shared_ptr<vector<string>> > adjacencyMap; vector<string>* myFriends = new vector<string>(); myFriends->push_back(string("a")); myFriends->push_back(string("v")); myFriends->push_back(string("g")); adjacencyMap["s"] = shared_ptr<vector<string> >(myFriends);
menyerlahkan keperluan untuk mempertimbangkan sifat kedua-dua rujukan dan petunjuk:
Peraturan Ibu Jari
Akhirnya, pilihan yang sesuai bergantung pada keperluan khusus. Sebagai prinsip panduan, pertimbangkan:
Atas ialah kandungan terperinci Bila Perlu Melalui Rujukan atau Penunjuk dalam C : Prinsip Panduan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!