C++ 类型错误和指针混淆

C++ 类型错误和指针混淆,c++,pointers,typeerror,C++,Pointers,Typeerror,我试图学习指针,但我得到了这个错误。是否需要更改头文件类请求?为什么我会犯这样的错误 cannot convert `req' from type `Request' to type `Request *' 错误发生在以下行中: //Store necessary information in a Request object for each request. Request req(url, request, 1); Request *reqq = req; //req points

我试图学习指针,但我得到了这个错误。是否需要更改头文件类请求?为什么我会犯这样的错误

cannot convert `req' from type `Request' to type `Request *'
错误发生在以下行中:

//Store necessary information in a Request object for each request. 
Request req(url, request, 1);

Request *reqq = req; //req points to the object
list->Append(reqq);
代码:

我的request.h文件包括以下内容:

class Request
{
 public:
  //constructor intializes request type

  Request(char *u, int rqtID, int rqtrID);
  char *url;
  int requestID;
  int requesterID;

}

使用
&req
放置
req
的引用。指针类型接受指针值,而不是对象

Request *reqq = &req; //req points to the object

使用
&req
放置
req
的引用。指针类型接受指针值,而不是对象

Request *reqq = &req; //req points to the object
您需要在此处使用:

请注意,在这种情况下,
&

如果操作数是某种类型T的左值表达式,则使用运算符& 创建并返回类型为T*的PRV值

您需要在此处使用:

请注意,在这种情况下,
&

如果操作数是某种类型T的左值表达式,则使用运算符& 创建并返回类型为T*的PRV值


req
是一个
请求
reqq
是指向
请求的指针。没有从一个到另一个的转换。运算符
&
的地址用于将对象转换为指针:
&req
@MarkRansom:
&
运算符不会将对象转换为指针。它产生一个指针值,该值是对象的地址。@KeithThompson,好吧,你发现我使用了一些粗俗的语言。对不起。
req
是一个
请求
reqq
是指向
请求的指针。没有从一个到另一个的转换。运算符
&
的地址用于将对象转换为指针:
&req
@MarkRansom:
&
运算符不会将对象转换为指针。它产生一个指针值,该值是对象的地址。@KeithThompson,好吧,你发现我使用了一些粗俗的语言。很抱歉
Request *reqq = &req; //req points to the object 
// -------------^