引入了const关键词,用于指定“常”对象及“常”对象成员,提供了对数据的一种保护机制,这C++语言的特色之一。但由此,也引出了一些语法上的要求。这些语法要求,实际上有一套完善的原则,需要熟知。
下面的程序,要利用输入的两个数创建一个对象,并调用printxy成员函数输入两数之和。下面的程序中,begin到end部分需要改动三处,才能保证程序符合要求并正确输出。请你找出并修改过来,提交begin到end部分的代码。
#include <iostream> using namespace std; class Test { private: int x; const int y; //************* begin ***************** public: Test(int a, int b); void printxy(); //(1) } ; Test::Test(int a, int b){x=a;y=b;} //(2) void Test::printxy() //(3) { cout<<"x*y="<<x*y<<endl; } //************* end ***************** int main() { int x1,x2; cin>>x1>>x2; const Test t(x1,x2); t.printxy( ); return 0; }
Input
两个整数,以空格分开
Output
两数的乘积
Sample Input
3 5
Sample Output
x*y=15
/* All rights reserved. * 文件名称:test.cpp * 作者:陈丹妮 * 完成日期:2015年 6 月 27 日 * 版 本 号:v1.0 */ #include <iostream> using namespace std; class Test { private: int x; const int y; //************* begin ***************** public: Test(int a, int b); void printxy()const; //(1) } ; Test::Test(int a, int b):x(a),y(b){} //(2) void Test::printxy()const //(3) { cout<<"x*y="<<x*y<<endl; } //************* end ***************** int main() { int x1,x2; cin>>x1>>x2; const Test t(x1,x2); t.printxy( ); return 0; }
学习心得: 常成员函数注意,const 的位置在函数名和括号之后 即为void getsum() const.写的时候注意不要放这个错误。继续努力!!