// Const.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<string>
#include<iostream>
using namespace std;
const string &shortstring(const string& s1, const string& s2)
{
return s1.size() < s2.size() ? s1 : s2;
}
string &shortstring(string &s1, string &s2)
{
const string &r = shortstring(const_cast<const string&>(s1), const_cast<const string &>(s2));// auto &r = shortstring(const_cast<const string&>(s1), const_cast<const string &>(s2));
return const_cast<string&>(r);
}
class ShortStr
{
public:
ShortStr(const string &ss1,const string &ss2):s1(ss1),s2(ss2){}
string shortstring()const{ return s1.size() < s2.size() ? s1 : s2; }
private:
string s1, s2;
};
int main()
{
string ss1 = "aaa";
string ss2 = "aa";
cout<< shortstring(ss1, ss2)<< endl;//返回string&
const string ss3 = "bbb";
const string ss4 = "bb";
cout << shortstring(ss3, ss4)<< endl;//返回const string&
ShortStr ss5("ccc", "cc"); //非常量版本对象
cout << ss5.shortstring() << endl;
const ShortStr ss6("ddd", "dd"); //常量版本对象
cout << ss6.shortstring() << endl;
return 0;
}
Const
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1、注意 数组和指针常量还是不能一概而论的。 2、const char, char const, char*con...
- (本文参考了http://blog.csdn.net/yingxunren/article/details/396...
- [定义理解] char* const p; p为指向字符变量的指针,地址不变,地址内容可变 const char ...
- 一.Static的作用详述 摘要:C语言中,static的字面意思很容易把我们导入歧途。本文将对C/C++中Sta...
- 参考CSDN:[error] MFC错误不能将参数1从"const char [3]"转换为"const wcha...