小编Eze*_*zee的帖子

为什么在Webkit运行时pow()计算错误?

我有一个Qt C++应用程序,其中有一个GUI线程,其中发生一些浮点计算.它还会打开QWebView一个带有一些视频的flash播放器.

很明显,关闭QWebView会干扰新的下一个浮点运算.因此pow(double, double)返回明确但不正确的值.

在一种情况下,它返回的值1000多于正确的值.另一次它返回1. #inf与参数一起使用时pow(10.0, 2.0).

我必须提到它是在不同的计算机上测试的,并不是特定于特定的CPU.

您是否有任何关于如何在Webkit中找到协处理器出错的地方以及如何防止它的建议?

样本(仅限x64)

环境:Qt 4.7.4,C++,HTML和flowplayer

CPP

wrongpow::wrongpow(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
 QVBoxLayout* layout = new QVBoxLayout(0);  
 m_view = new QWebView(this);  
 m_view->setMinimumSize(400, 400);
 m_view->settings()->setAttribute(QWebSettings::PluginsEnabled, true);
 m_view->settings()->setAttribute(QWebSettings::LocalContentCanAccessRemoteUrls, true);
 layout->addWidget(m_view);
 QDir dir(QApplication::applicationDirPath());
 dir.cd("media");
 m_view->load(QUrl(QFileInfo(dir, "index.html").absoluteFilePath()));

 QPushButton* button = new QPushButton(QLatin1String("Click on video start"), this);
 layout->addWidget(button);
 Q_ASSERT(connect(button, SIGNAL(clicked()), this, SLOT(closeView()))); 

 setLayout(layout);
 adjustSize();
}  
Q_SLOT void wrongpow::closeView()
{
 delete m_view;
 m_view = NULL;

 double wrongResult = …
Run Code Online (Sandbox Code Playgroud)

c++ qt webkit pow x87

11
推荐指数
1
解决办法
673
查看次数

如何在Qt中获取系统网络状态?

如何在Qt中获取系统网络状态,就像我们在.NET中获取事件命中一样,以便我们每次连接网络时都会获得网络连接状态的信号?

是否有任何功能与我上面提到的功能相同?

使用ping和其他网络配置方法需要花费少量时间.
但我需要尽可能快地显示它,而不是使用特定的端口来监听套接字并显示其错误.

任何人都可以帮助我吗?

qt network-programming

6
推荐指数
1
解决办法
939
查看次数

如何在QLineEdit中放置静态文本(后缀,前缀)?

如何在Qt C++ 中的QLineEdit中放置一个静态文本,以便它不能被删除,当我写入QLineEdit时,它不应该是间隔的.

macos qt qlineedit

4
推荐指数
1
解决办法
3919
查看次数

设置QMenu项目的高度

是否可以设置样式QMenu:item以设置自定义高度?

我需要它用于弹出菜单,通过我一直看到它似乎不可能,但也许有人确切知道.

qt menu qmenu

2
推荐指数
1
解决办法
3012
查看次数

标签 统计

qt ×4

c++ ×1

macos ×1

menu ×1

network-programming ×1

pow ×1

qlineedit ×1

qmenu ×1

webkit ×1

x87 ×1