非构造函数里使用cin时>>出现红色下划线报警,请问一下这是为什么?

class GearBox		//
{
public:	
	string type;
	GearBox(int a);
	GearBox(){type="东风二十七";}
	string setGearBox(string box){
		cin>>box;            //就是这里的>>

	}

};

 

虽然我不确定,但我想应该是要把cin〉〉放前面,因为前面的box已经用了。(本人猜测。)