Anzeige:
Ergebnis 1 bis 6 von 6

Thema: [Qt4] Speicherbelegungs Prbleme bei QByteArray

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255

    [Qt4] Speicherbelegungs Prbleme bei QByteArray

    Wenn ich wie folgt meine Methode schreibe bekomme falsche Werte zurück.
    Mein Problem hierbei ist das die Daten eine Aufbereitung für ein struct sind in dem alle Werte ein char * erwarten.
    PHP-Code:
    QStringList hjcmsxml::ServerConnectionData( const QString &attr )
    {
      
    int i;
      
    QString find(attr);
      
    QStringList retval;
      
    QDomElement Element findDomElementByAttr(find);
      if ( !
    Element.hasAttribute("name") )
        return 
    retval;

      
    QDomNodeList nodes =  Element.childNodes();
      for ( 
    0nodes.count() ; i++ )
        {
          
    retval << nodes.item(i).firstChild().nodeValue().toLocal8Bit().data();
        }
      return 
    retval;

    Jetzt habe ich zwei Stunden herum gebastelt bis ich zu dieser Lösung gekommen bin.
    Das funktioniert wunderbar, ich frage mich aber trotzdem warum mir QByteArray oben so probleme macht?
    Liegt es daran das es in einer Schleife liegt?
    Und ist das ein größeres Problem was einen Bugs eintrag rechtfertigt?

    PHP-Code:
    QHash<QStringQByteArrayhjcmsxml::ServerConnectionDataQStringList fields, const QString &attr )
    {
      
    int i;
      
    QString find(attr);
      
    QHash<QStringQByteArrayretval;
      
    QDomElement Element findDomElementByAttr(find);
      if ( !
    Element.hasAttribute("name") )
        return 
    retval;

      if ( 
    fields.size() < )
        return 
    retval;

      
    QDomNodeList nodes =  Element.childNodes();
      for ( 
    0nodes.count() ; i++ )
        {
          foreach ( 
    QString zeigerfields )
          {
            
    QString cmd nodes.item(i).nodeName().replace("server_","");
            if (
    zeiger == cmd)
              {
                
    retval.insertzeigernodes.item(i).firstChild().nodeValue().toLocal8Bit() );
              }
          }
        }

      return 
    retval;
    }
      
    /* Lese Daten in QHash */
      
    QHash<QStringQByteArraydata;
      
    data m_hjcmsxml->ServerConnectionDataoptionsact );

      
    /* Starte Verbindung zum MySQL Server */
      
    HJCMS_OPTIONS opts;
      
    opts.host data["host"].data();
      
    opts.user data["user"].data();
      
    opts.password data["password"].data();
      
    opts.db data["db"].data();
      
    opts.port data["port"].toUInt(&cv,10);
      
    opts.unix_socket data["socket"].data(); 
    Geändert von undefined (01-02-2008 um 14:21 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •