【发布时间】:2010-11-18 22:52:42
【问题描述】:
这可能吗:
将常量变量更改为非常量
我正在创建一个全新的字符串类,我的构造函数看起来像这样
LString(const char string1[]) {/* whatever I do */}
我不会使用 const 关键字,但这是获得类似字符串的唯一方法
LString ls = "a string";
我会有很多函数来修改这个字符串
即使我复制了这个字符串,我仍然无法将 const 转换为非 const
可以吗
如果没有,谁能想到漏洞
好的,所以有人说没有问题,这是我的代码
#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";
}
};
这会出现以下错误
file.cpp: 在构造函数中'LString::LString(const char*)':
file.cpp:7:24: 错误:从 'const char*' 到 'char' 的无效转换
如果这有所作为,我使用的是没有 IDE 的 mingw 编译器
我正在通过命令提示符编译
我想这就是你可能需要的所有信息
如果您需要,请告诉我
【问题讨论】:
-
我真的看不出是谁在你的问题中加了一个(-1),这太糟糕了,我很抱歉;无论是谁做的,都忽略了 SO 的重点,即让人们能够对编程提出问题,就我而言,你的问题非常适合。
-
@Bruno:同意。对这个问题 +1,这是一个很好的问题。
-
您不能修改字符串文字。您需要复制或重新考虑您要完成的工作。