Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » vector-Datentyp in struct

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
10.07.2007, 13:35 Uhr
David H.




C++:
...
const int bins = 1000;                         // Anzahl Stuetzstellen

struct sIonen {
        vector<double> dichte(bins);        // Dichteverteilung
        int Z;                                  // Wertigkeit
        double D;              // Diffusionskonstante [A^2 * ns^-1]
...
};



Das ist ein Teil der Datenstruktur die ich gerne generieren moechte und es scheitert an der zweiten Zeile. Beim Compilieren folgende Fehlermeldung:
PNP.cpp:18: error: 'bins' is not a type

Das Compilieren klappt, wenn ich `(bins)' weglasse, doch dann erhalte ich eine sehr eigenartige Inizialisierung des Vektors dichte: ohne Elemente (zumindest kann ich nicht auf sie zugreifen) aber riessengross. Ist es denn unmoeglich/unueblich in einem struct einen Konstruktor einer Klasse aufzurufen?

Besten Dank! MfG,
David

Dieser Post wurde am 10.07.2007 um 13:37 Uhr von David H. editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
10.07.2007, 14:24 Uhr
mike
Pinguinhüpfer
(Operator)


Du kannst zu diesem Zeitpunkt nichts reservieren - du deklarierst das Ding ja nur


C++:
#include <iostream>
#include <vector>


const std::vector<double>::size_type bins = 100;

struct sIonen {
  sIonen();
  std::vector<double> dichte;
  int Z;
  double D;
};

sIonen::sIonen()
  : dichte(bins)
{
  std::cout <<     dichte.capacity() << std::endl;
}

int main()
{
  sIonen foo;

  return 0;
}



lg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
10.07.2007, 15:18 Uhr
David H.



Genau das wars! Ich (=Laie) wusste nicht um die Syntax bescheid und hatte sie in meinem C++ Schmoeker sowie Google nicht gefunden.

Allerbesten Dank!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: