Passer un tableau (dont on ne connait pas la taille à l'avance) en attribut d'une classe
Bonjour à toutes et à tous :mouarf:
Je viens de débuter dans le C++, et pour m'entrainer je souhaite appliquer la théorie dans un excercice utile pour mon travail. :D
Je souhaiterai tout simplement créer une classe "mesures", dans laquelle l'utilisateur peut passer un tableau de mesures donc on ne connait pas la taille par avance.
Certains objets créer auront donc un tableau de taille 50, d'autres de taille 80, etc...
Voici le header que j'ai créé:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #ifndef MEASUREMENTS_H_INCLUDED
#define MEASUREMENTS_H_INCLUDED
class Measurements
{
public:
Measurements();
Measurements(int sizeTab, std::string names[sizeTab], std::string units[sizeTab], double values[sizeTab]);
private:
int m_sizeTab;
std::string m_names[m_sizeTab];
std::string m_units[m_sizeTab];
double m_values[m_sizeTab];
};
#endif // MEASUREMENTS_H_INCLUDED |
Et voici le cpp:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #include <iostream>
#include <string>
#include "Measurements.h"
using namespace std;
//Object methods
Measurements::Measurements()
{
m_sizeTab = 1;
m_names[m_sizeTab] = {"DEFAUT"};
m_units[m_sizeTab] = {"DEFAUT"};
m_values[m_sizeTab] = {0};
}
Measurements::Measurements(int const sizeTab, std::string names[sizeTab], std::string units[sizeTab], double values[sizeTab]):
m_sizeTab(sizeTab), m_names(names), m_units(units), m_values(values)
{
} |
Je voudrais savoir pourquoi le programme n'abouti pas, et quelle logique m'a échappée.
Merci bien :mrgreen: !