Bonjour ,

J'essaie d'intégrer un programme en C++ dans Qt et il y a apparemment quelques soucis de convertions

Code : 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
25
    void MaFenetre::crypter()
    {
        QString monTexte=m_zone1->toPlainText(); // Récupération du texte
        QString maCle=m_ligne1->text(); // Récupération de la clé
        for (int i=0 ; i<monTexte.length();i++)
        {
            int k=0;
 
            k=maCle[i%maCle.length()]%26;
            monTexte.at(i)=caesar(monTexte.at(i),k);
        }
        m_zone1->clear();
        m_zone1->setText(monTexte);
    }
    // ---------------------------------------------------------------------------------------
 
    QChar MaFenetre::caesar(QChar c,int cle)
    {
     if('a' <= c && c <='z')
      return (c-'a'+cle)%26+'a';
     else if('A' <= c && c <='Z')
      return (c-'A'+cle)%26+'A';
     else
      return c;
    }
Cela me dit des messages d'erreurs tel que :

invalid operands to binary expression ('QCharRef' and 'int') à la ligne : k=maCle[i%maCle.length()]%26;

ou bien :
no viable overloaded '=' à la ligne : monTexte.at(i)=caesar(monTexte.at(i),k);

Quelqu'un aurait une solution ?

Merci d'avance