est-ce possible:const à la non-const C++
changer une variable constante
non constante, je fais une classe nouvelle chaîne entière et mon constructeur ressemble à ce
LString(const char string1[]) {/* whatever I do */}
Je ne mettrais pas le mot-clé const mais c'est la seule façon dont je peux obtenir des chaînes comme
LString ls = "a string";
Je veux l ont beaucoup de fonctions pour modifier cette chaîne
même si je fais une copie de cette chaîne, je ne peux toujours pas convertir const non const
est-il possible
sinon, peut-on penser à un échappatoire
ok si certaines personnes disent qu'il n'y a pas de problème, bien voici mon code
#include <iostream>
#include <cstdlib>
using namespace std;
class LString
{
public:
LString(const char string1[]){
char s1[250] = {string1};
cout << "you constructed LString with a const string as a parameter";
}
};
cela vient avec l'erreur suivante s
file.cpp: In constructor 'LString::LString(const char*)':
file.cpp:7:24: error: invalid conversion from 'const char*' to 'char'
si cela fait une différence que je utilise le compilateur MinGW sans IDE
Je compile par l'invite de commande
Je pense que c'est toutes les informations dont vous pourriez avoir besoin
Dites-moi si vous en avez besoin
Je ne peux pas vraiment voir qui a mis un (-1) dans votre question, ce qui est trop mauvais et je suis désolé; Celui qui l'a fait a manqué le but de SO, qui est de permettre aux gens de poser des questions sur la programmation et, en ce qui me concerne, votre question convient parfaitement. –
@Bruno: d'accord. +1 à cette question, c'est un bon. – Ashe
Vous ne pouvez pas modifier un littéral de chaîne. Vous devez faire une copie ou repenser ce que vous essayez d'accomplir. – Blastfurnace