我在这行代码中有问题

GsmMeasurements * gsm_measurements = new GsmMeasurements(*(request->get_mr()));

错误是:

将“const Request”设置为“virtual gfp::MeasurementReport * Request::get_mr()”的“this”自变量会丢弃限定符[-fpermissive]

GsmMeasurements的原型(prototype)是
GsmMeasurements(const gfp::MeasurementReport& mr);

get_mr的原型(prototype)是
gfp::MeasurementReport* RequestA::get_mr ( )
RequestA继承Request
我无法理解为什么会出现此错误。

最佳答案

gfp::MeasurementReport* RequestA::get_mr ( )需要更改为
gfp::MeasurementReport* RequestA::get_mr ( ) const
这是因为request是指向常量对象的指针,因此任何功能都需要标记为const

您的问题文字如此全面,我相信这是唯一的可能性。

08-04 21:14