1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
class Program
{
static void Main(string[] args)
{
const int NB_ELEMENTS = 100000;
Vector Y = new Vector(NB_ELEMENTS,1.0); // Création d'un
vecteur de 100000 elements
int i = 1;
double h = 2.0;
Vector u = new Vector(); // Création d'un vecteur vide je
suppose (pas de constructeur posté)
do
{
u = (0.5 - Y) / h; // Ici à chaque fois, tu recrée en mémoire
un nouveau vecteur de 100000 elements (le vecteur Res dans le code de
l'opérateur.). Et celui que u contient avant l'affectation est perdu. Cette
opération est faite 100000 fois dans ta boucle.
i++;
} while (i <= NB_ELEMENTS);
return;
}
}
public static Vector operator-(double lhs, Vector rhs)
{
Vector Res = new Vector(rhs.nrows, rhs.ncols);
for (int i = 1; i <= rhs.nbelems; i++)
{
Res[i] = lhs - rhs[i];
}
return Res;
} |
Partager