我将 qt5.5.1 与 qt-creator 3.5.1 一起使用,并尝试使用 GeoDataStyle 在 GeoDataPlacemark 上设置样式。它曾经工作正常,但在 Marble 更新后使用共享指针而不是直接指针,我的程序段错误。使用 GDB,我将 seg 错误跟踪到我使用 styleArch 直接指针创建 QSharedPointer 的行。有谁知道可能是什么问题?
我的旧代码如下:
styleArch->setIconStyle( *icon );
place->setStyle( styleArch ); //Old Marble
使用新 Marble API 的新代码如下:
styleArch->setIconStyle( *icon );
place->setStyle(Marble::GeoDataStyle::Ptr( styleArch )); //New Marble
谢谢你的时间!