Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/131.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 没有名为'的成员;setRawData';在';QwtPlotCurve';-将Qt 4.7转换为Qt 5.8_C++_Qt_Qbytearray - Fatal编程技术网

C++ 没有名为'的成员;setRawData';在';QwtPlotCurve';-将Qt 4.7转换为Qt 5.8

C++ 没有名为'的成员;setRawData';在';QwtPlotCurve';-将Qt 4.7转换为Qt 5.8,c++,qt,qbytearray,C++,Qt,Qbytearray,我需要将Qt遗留代码从4.7转换为5.8,我在Qt Creator 4.2.1 Clang 7.0(Apple)64位中有一个编译错误 查看.cpp文件 #include "mpiChartCurve.h" #include <qwt_plot_curve.h> mpiChartCurve::mpiChartCurve(QwtPlot *chart_): m_chart(chart_), m_curve(new QwtPlotCurve()) { } mpiCh

我需要将Qt遗留代码从4.7转换为5.8,我在Qt Creator 4.2.1 Clang 7.0(Apple)64位中有一个编译错误

查看.cpp文件

#include "mpiChartCurve.h"
#include <qwt_plot_curve.h>


mpiChartCurve::mpiChartCurve(QwtPlot *chart_):
    m_chart(chart_),
    m_curve(new QwtPlotCurve())
{
}

mpiChartCurve::~mpiChartCurve()
{
    // be default qwt will delete the curve when it is destroyed
    // only delete the curve when detach is called
}

void mpiChartCurve::detach()
{
    m_curve->detach();

    // hack for now?  qwt doesn't seem to redraw properly until a curve is attached after a detachment, so attach dummy
    QVector<double> x, y;
    m_curve->setRawData(x.constData(), y.constData(), 0); // JDL convert Qt4 to Qt5  BROKE
    m_curve->attach(m_chart);
    m_curve->detach();

    delete m_curve;
    m_curve = 0;
}


void mpiChartCurve::attach()
{
    if (!m_curve)
        return;

    m_curve->setRawData(m_xData.constData(),m_yData.constData(), count()); // JDL convert Qt4 to Qt5  BROKE
    m_curve->attach(m_chart);
}
我在QByteArray的文档中注意到了这一评论

(过时)运算符常量char*()常量


<>我的C++技能很有限,你能看到任何微小的调整,可以把这个从QT4转换成QT5吗?那么什么是替换?

setRawData不是QwtPlotCurve的成员函数。它是QByteArray的成员函数,只接受2个参数。将setRawData更改为setRawSamples,setRawSamples是QwtPlotCurve的成员函数,并接受您要查找的三个参数

固定版本

#include "mpiChartCurve.h"
#include <qwt_plot_curve.h>


mpiChartCurve::mpiChartCurve(QwtPlot *chart_):
    m_chart(chart_),
    m_curve(new QwtPlotCurve())
{
}

mpiChartCurve::~mpiChartCurve()
{
    // be default qwt will delete the curve when it is destroyed
    // only delete the curve when detach is called
}

void mpiChartCurve::detach()
{
    m_curve->detach();

    // hack for now?  qwt doesn't seem to redraw properly until a curve is attached after a detachment, so attach dummy
    QVector<double> x, y;
    m_curve->setRawSamples(x.constData(), y.constData(), 0); // JDL convert Qt4 to Qt5  BROKE
    m_curve->attach(m_chart);
    m_curve->detach();

    delete m_curve;
    m_curve = 0;
}


    void mpiChartCurve::attach()
{
    if (!m_curve)
        return;

    m_curve->setRawSamples(m_xData.constData(),m_yData.constData(), count()); // JDL convert Qt4 to Qt5  BROKE
    m_curve->attach(m_chart);
}
#包括“mpiChartCurve.h”
#包括
mpiChartCurve::mpiChartCurve(QwtPlot*图表):
m_图(chart_),
m_曲线(新的QwtPlotCurve())
{
}
mpiChartCurve::~mpiChartCurve()
{
//默认情况下,qwt将在曲线被破坏时删除该曲线
//仅在调用“分离”时删除曲线
}
void mpiChartCurve::detach()
{
m_曲线->分离();
//哈克现在?qwt似乎并没有正确地重新绘制,直到一个曲线连接后分离,所以连接虚拟
矢量x,y;
m_曲线->setRawSamples(x.constData(),y.constData(),0);//JDL将Qt4转换为Qt5
m_曲线->附加(m_图表);
m_曲线->分离();
删除m_曲线;
m_曲线=0;
}
void mpiChartCurve::attach()
{
if(!m_曲线)
返回;
m_curve->setRawSamples(m_xData.constData(),m_yData.constData(),count());//JDL将Qt4转换为Qt5
m_曲线->附加(m_图表);
}
#include "mpiChartCurve.h"
#include <qwt_plot_curve.h>


mpiChartCurve::mpiChartCurve(QwtPlot *chart_):
    m_chart(chart_),
    m_curve(new QwtPlotCurve())
{
}

mpiChartCurve::~mpiChartCurve()
{
    // be default qwt will delete the curve when it is destroyed
    // only delete the curve when detach is called
}

void mpiChartCurve::detach()
{
    m_curve->detach();

    // hack for now?  qwt doesn't seem to redraw properly until a curve is attached after a detachment, so attach dummy
    QVector<double> x, y;
    m_curve->setRawSamples(x.constData(), y.constData(), 0); // JDL convert Qt4 to Qt5  BROKE
    m_curve->attach(m_chart);
    m_curve->detach();

    delete m_curve;
    m_curve = 0;
}


    void mpiChartCurve::attach()
{
    if (!m_curve)
        return;

    m_curve->setRawSamples(m_xData.constData(),m_yData.constData(), count()); // JDL convert Qt4 to Qt5  BROKE
    m_curve->attach(m_chart);
}