2014-01-22 67 views
-4

我的老师提到了(实际上他只是写在板子上,并没有提到它)这个特殊的指针,但我不明白它的意义。他在板子上写的例子是这样的:* <Class_Name> * <variable_name>中的含义是什么?

Book * book; 

指针在像这样使用时会做什么?

+3

对此的解决方案是不是'问老师?' – John3136

+1

不是问题 –

+0

@AndreyChernukha ......但我找不到合适的密切原因。 –

回答

1

*是该类型的一部分。

book的类型是Book *,这是一个指向Book的指针。

class Book { 
}; 

Book * book1 = new Book(); 
Book * book2 = book1; 
//now book1 and book2 point to the same Book 
+0

我以为Book * book是指向一本书的指针,Book * book就是一样的东西? –

+0

@ grim_v3.0空格在这里并不重要。 – Samuel

+0

@ grim_v3.0,是的。 “书*书”,“书*书”,“书*书”和“书*书”是相同的。 –

0

基本上,使用*可以用来定义一个指针。
什么你的老师的意思是一个指针申报类型的书

Book* book1 ; // Declare a pointer to a object of type Book 
    Book bookObj ; 
    book1 = &bookObj ; // now book1 points to bookObj. 

的对象,您可以使用*与任何类型(预先定义,以及在C++ custome定义的类型)。
您也可以使用*来取消引用指针。

int num1 = 0 ; 
    int* num1p = &num1 ; // pointer pointing to num1 
    *num1p = 10 ; // same as num1 = 10. 

希望这有助于!

相关问题