我收到这个错误
错误C2440:'=':无法从'const BWAPI::UnitType *'转换为'BWAPI::Type *'
在这条线
this->generalType = &type;
问题是什么?由于UnitType扩展类型不应该被允许?
class CombatEvent {
public:
CombatEvent& setType(CombatEventType type);
Type* getGeneralType() const;
private:
UnitType unitType;
Type* generalType;
}
// implementation
CombatEvent& CombatEvent::setUnitType(const UnitType type) {
this->generalType = &type;
this->unitType = type;
return *this;
}
最佳答案
删除const
。这应该工作。但是,您正在传递值。您可以改为通过const UnitType&
传递。这样可以提高性能。或者,当然,如果您通过引用传递,也请删除违规行中的address-of运算符。
关于c++ - 错误C2440 : '=' : cannot convert from 'const BWAPI::UnitType *' to 'BWAPI::Type *' ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12068779/