我只是对在C++上使用指针感到困惑…你可能会说,“一个指针显然是另一个变量的内存地址,在你的程序中有一些特定的条件需要它”。但我不是指一般的指针,我是指你用来“模拟”一个类的指针。我认为代码会更多地解释它:
#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;
}
这里您可以看到,我有另一个指针,称为bookPointer,它所做的一切都与book类Book1..的原始实例相同。我不明白…用这个有什么好处?如果可以的话给我一个场景!谢谢你的帮助!!
根本没有“模拟”发生。