Bonjour
Je souhaite implementer le ++ correspondant au i++ du C (equivalent de i=i+1)
J'ai essayé, voila ce que ca donne :
Code Fortran : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 program main implicit none integer :: i interface operator (++) function increment(i) integer, intent(in)::i integer :: increment end function increment end interface i=0 i++ print*,i end program main function increment(i) integer, intent(in) :: i integer :: increment increment = i+1 end function increment
et voici l'erreur que j'obtiens
Code Erreur compilation : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 francixtra:~/Documents/fortran/operateurs/matrice.matrice$ f95 -c main.f95 main.f95:15.2: i+ 1 Error: Unclassifiable statement at (1) main.f95:10.27: end function increment 1 Error: Operator interface at (1) conflicts with intrinsic interface
Je n'ai jamais eu de cours sur la surcharge d'opérateur, j'ai juste appri avec les cours dispo sur internet. J'ai réussi quelques essais plus simples, mais celui-là ne marche pas
Alors est ce qu'il est possible de faire ceci en Fortran ?
et si oui, quelles sont mes erreurs ?
Merci
Partager