【笔记】C++中一些易混淆的知识点
来源:互联网 发布:网络招生平台 编辑:程序博客网 时间:2024/05/19 21:43
Note
文章的知识点基本来自于《C++ Primer》,其中的观点可以看作是对原文的翻译
Public,Protected,Private三种继承方式
派生类在继承列表中通过在基类名字前加上权限标签来确定继承方式。
class Derived:Public Base {};
class默认Private方式继承,struct则是Public。
被继承元素的访问权限是由基类中的标签和派生类的继承列表中的权限标签共同决定的。
被继承元素在派生类中的访问权限只能够更严格。
1)Public:保持在基类中的权限
2)Protected:Public->Protected,Protected不变
3)Private:全部变成Private成员
如果想让某一元素例外,可以使用using。下面的代码中,虽然以Private方式继承Base,却保持了其Public属性。
class Base {public: int base_val;};class Derived:Private Base {public: using Base::base_val;};
利用size_type和size编写打印容器元素的模板
我们可能一开始会写出这样的代码
for ( T::size_type i = 0; i < x.size(); ++i )
不过,编译器会假定 T::size_type 是数据成员而产生编译错误。必须告诉它。
template<typename T> void d_print( const T& x ) { for ( typename T::size_type i = 0; i < x.size(); ++i ) cout << x[i] << ' '; cout << endl;}
0 0
- 【笔记】C++中一些易混淆的知识点
- C/C++一些易混淆的知识点
- [c语言基础回顾]操作符和表达式中一些极其容易混淆的知识点
- OC中一些容易混淆和忘记的知识点总结
- C#中易混淆的知识点
- java 中易混淆的知识点1
- 基于mysql中一些易混淆知识点总结
- java集合中的一些易混淆的知识点
- Linux中易混淆知识点
- js中易混淆知识点
- c++的一些容易混淆基础知识点
- Python的易混淆知识点
- C/C++容易混淆的小知识点
- android中易混淆的知识点(整理自用)
- java 中容易混淆的知识点
- java基础中容易混淆的知识点
- C++基础中常见易混淆知识点
- 初学c/c++出现的一些易混淆概念
- 使用Oracle SQLDeveloper连接数据库并创建用户
- Android 内存优化(从网上搜集整理的,就是为了敲一遍加深一下记忆)
- android studio重命名 string 资源的文件名字
- 正则表达式的学习一
- cuda 自带函数出现重复定义dim3或uint3
- 【笔记】C++中一些易混淆的知识点
- android WebView总结
- 项目改名后,tomcat仍使用的是修改前名称
- 好的座右铭
- 事务
- Eclipse 中 Could not find *.apk的解决方案
- mongdb 学习之 模糊查询
- [IOS 开发] enumerateObjectsUsingBlock 、for 、for(... in ...) 的区别 & 性能测试
- 关于LoaderManager