谁能告诉我怎么才能把输入的数定义为常量,
谢谢
有的,不过,呵呵……
int _ConstCin(const int _cin) { //here use const _cin }
void main() { int live41; cin>>live41; _ConstCin(live41); }
这段程序确实具有迷惑性,起初没有认真看,今天再次看到这个帖子,我也不得不问我自己难道常量可以通过输入赋值吗。我再次看了live41 的这段代码。原来
int _ConstCin(const int _cin) // 只是一个非系统的子程序。 { //here use const _cin }
迷惑我的是这个函数名的写法 _ConstCin 我简单把他理解为系统函数,因为函数名前有一个下滑线。该函数具有一个形参变量,类型为常整型,也就是说,我们可以应用这个常整型形参变量,但不可以改变它。
现在回到楼主的这个问题上来。
答案是不可以, 常量是不可以改变的,当然不能通过输入予以赋值,常量必须予以初始化,如: const int a = 3;
对不起呵呵,名字随便乱写的,太规范骗到kai了。
想封装,但想想也不行,不过我有问题,为什么以下不能通过?
#include<iostream> #include<string> using namespace std;
class inputConst { private: string sValue; public: inputConst() { cin>>sValue; } friend string friendConst(); };
string friendConst() { return inputConst.sValue; }
void main() { inputConst input; string live41 = friendConst(); cout<<live41<<endl; }
不好意思知道哪里错了,把类改成这样:
class inputConst { private: string sValue; public: inputConst() { cin>>sValue; } friend string friendConst(); }live41; //先实例化,否则不用构造
string friendConst() { return live41.sValue; }
郁闷,果然是没办法实现楼主的问题。
[此贴子已经被作者于2004-10-01 09:58:28编辑过]