【发布时间】:2014-10-01 17:55:15
【问题描述】:
我有一个 qt 应用程序,我将所有会话 cookie 存储在 cookieJar 中。为了在不关闭应用程序的情况下删除会话,我目前在按下按钮时调用cookieJar->deleteLater();。
这会引发以下错误:
The inferior stopped because it triggered an exception. Stopped in thread 0 by: Exception at 0x54d6559d, code: 0xc0000005: write access violation at: 0x1, flags=0x0 (first chance)
cookieJar 当前是一个公共变量,它是用当前类作为父类初始化的。为什么我还是删不掉?
【问题讨论】:
-
也许尝试在
QNetworkCookieJar::setAllCookies()中传递空列表而不是删除。这个异常看起来你使用了错误的指针(非现有指针) -
@Chernobyl :我之前尝试过(
QList<QNetworkCookie> cookieList = new QList<QNetworkCookie>(); cookieJar->setAllCookies(&cookieList);)但这不起作用。介意告诉我如何传递一个空的 QList? -
新的?你不用指针,不妨试试这个:
QList<QNetworkCookie> cookieList(); cookieJar->setAllCookies(cookieList)
标签: c++ qt session cookies qnetworkaccessmanager