What is the benefit of using a pointer C++
本问题已经有最佳答案,请猛点这里访问。
我只是混淆了在C++上使用指针的部分。您可能会说,"指针显然是另一个变量的内存地址,并且在您的程序中有一些您需要它们的条件。"但我不是指一般的指针,我是指你用来"模拟"一个类的指针…我认为代码可以解释得更多:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #include <iostream> #include <string> #include"Book.h" int main() { Book book1; Book *bookPointer = &book1; book1.setBooksId(123); std::cout <<"BOOK ID:" << book1.getBookId() << std::endl; (*bookPointer).setBooksId(300); std::cout << (*bookPointer).getBookId() << std::endl; /*When usage of arrow member selection member, left is always a pointer. Same thing as above, but better practice! */ bookPointer->setBooksId(100); std::cout <<"POINTER ARROW :" << bookPointer->getBookId() << std::endl; return 0; } |
这里你看到我还有一个指针,叫做book pointer,它所做的一切都和book类book1的原始实例相同。我不明白……使用这个有什么好处?如果可以的话给我一个场景!谢谢你的帮助!!
根本没有"模拟"发生。