在C++中,BOOK elem和BOOK *elem是两种不同的变量声明方式。
-
BOOK elem:这是一个名为elem的变量,其类型为BOOK。这意味着elem是一个普通的变量,存储了一个BOOK类型的对象。在这种情况下,elem本身不是一个指针,而是直接存储了BOOK类型的数据。
-
BOOK *elem:这是一个名为elem的指针变量,其类型为指向BOOK类型的指针。这意味着elem是一个指针,存储了一个内存地址,该地址指向一个BOOK类型的对象。通过这个指针,可以访问和操作该对象。
在使用上的区别如下:
- 对于普通变量(如BOOK elem),可以直接使用变量名来访问和修改的值。例如,elem.title = “Book Title”。
- 对于指针变量(如BOOK elem),需要使用解引用运算符()来访问和修改所指向的对象的值。例如,(*elem).title = “Book Title”。
BOOK elem是一个普通的变量,而BOOK *elem是一个指针变量,用于存储指向BOOK类型对象的内存地址。