我试图编译一个简单的Qt5.2程序,它使用libnm-qt5 & libmm-qt5来管理连接,但是当我试图用下面的代码列出它们时:
#include <arpa/inet.h>
#include <QtCore/QTextStream>
#include <NetworkManagerQt5/manager.h>
#include <NetworkManagerQt5/device.h>
#include <NetworkManagerQt5/activeconnection.h>
#include <NetworkManagerQt5/connection.h>
QString typeAsString(const int type)
{
switch (type) {
case 0x0: return QString("Unknown");
case 0x1: return QString("Ethernet");
case 0x2: return QString("Wifi");
case 0x3: return QString("Unused1");
case 0x4: return QString("Unused2");
case 0x5: return QString("Bluetooth");
case 0x6: return QString("OlpcMesh");
case 0x7: return QString("Wimax");
case 0x8: return QString("Modem");
}
return QString("Unknown");
}
int main()
{
QTextStream qout(stdout, QIODevice::WriteOnly);
NetworkManager::Device::List list = NetworkManager::networkInterfaces();
foreach (NetworkManager::Device *dev, list) {
qout << dev->uni() << "\n";在初始化时,我在QtCreator: QtCreator错误:无法将'const QSharedPointer‘转换为'NetworkManager::Device*’中出现了一个错误:(变量=*QtCreator;;extension ({--QSharedPointer;break;}) ^“
我一直在搜索一些存储库,比如tis:file?file=enable-contour.patch&package=plasma-mobile&project=home%3Awonko%3Apa-devel-contour-hack&rev=21,它们使用:
NetworkManager::Device::List iflist = NetworkManager::networkInterfaces();
foreach (NetworkManager::Device::Ptr iface, iflist){
}但这也给我带来了错误。有人知道正确的解决方案吗?
谢谢。
发布于 2014-10-02 17:43:09
试着替换
foreach (NetworkManager::Device *dev, list) { ... 在这方面:
foreach (NetworkManager::Device::ptr dev, list) { ...https://stackoverflow.com/questions/23574583
复制相似问题