C++11特性(01)auto关键字

C++11特性之一:auto关键字

auto关键字

在C++11之前的版本中,其实也有auto关键字(这个关键字其实是为了兼容C语言中的auto自动变量),所以在C语言中也可以使用auto关键字,只是此时的auto的意思就不是C++11中的特性:自动类型。
如:
	auto ai = 33;         //ai类型为int

	auto ad = 3.221;      //ad类型为double

	auto str = "Hello World";    //str类型为const char *
	std::cout << "ai = " << ai << " ad = " << ad << " str = " << str << std::endl;

这个在Cocos3.X版本中使用最多,方便我们用户去进行类型的书写,代码量也相应减少。

这个特性我们在编写MFC程序的时候也可以使用:如
	// 修改此代码以绘制文档数据
	dc.FillSolidRect(lprcBounds, RGB(255, 255, 255));

	auto strText = _T("TODO: implement thumbnail drawing here");                          //strText类型为CString
	LOGFONT lf;

	auto pDefaultGUIFont = CFont::FromHandle((HFONT) GetStockObject(DEFAULT_GUI_FONT));   //pDefaultGUIFont的类型为CFont
	pDefaultGUIFont->GetLogFont(&lf);
	lf.lfHeight = 36;

	auto fontDraw;
	fontDraw.CreateFontIndirect(&lf);

	auto pOldFont = dc.SelectObject(&fontDraw);
	dc.DrawText(strText, lprcBounds, DT_CENTER | DT_WORDBREAK);
	dc.SelectObject(pOldFont);
这样的话,极大的方便了我们去编写程序,并且也不用以前的的从派生类到基类的转换等等。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值