C/C++中的一些区别
2015-09-19 17:07
344 查看
1.struct声明的类和class声明的类的区别
struct 不指明private和public则默认为是public类型;
class不指明private和public则默认为是private类型;但是建议常用class来建立类来体现C++的风格程序。
在类中常用的类型有private(私有的)、public(公用的)、protected(受保护的) ,其中protected声明成员是受保护的的成员,不能被类外访问,但可以被派生类成员函数访问。private(私有的)私有的成员函数只能被本类中的其他其他成员函数所调用。
2.成员函数在类外定义时一定要加上“::”,即作用域限定符,或作用域运算符。
3.类函数必须在类体中作原型的声明,然后再类外定义,否则会编译出错。
4.inline(内置函数)
在类体中定义的成员函数的规模一般都很小,而系统调用函数的过程所花费的时间开销相对比较大,如果调用一个函数的时间开销远远大于小规模函数体中全部语句的执行时间。为了减少时间开销,在内体中定义的成员函数不包括循环结构等控制,C++系统会自动将他们作为内置函数来处理。即把函数代码嵌入程序的调用点。
5.类的大小sizeof(Time)只取决于类中的数据成员的空间大小,与函数成员无关。
6.C++中专门设置了this指针来指向不同的对象。类内定义的成员函数和类外定义的成员函数都不占用对象的存储空间。
7。类是一个抽象的数据类型,不占用存储空间;而对象是实际存在的实体,是占用存储空间的,其数据成员是有值的,可以被引用。
8.声明只是一种形式,不包括具体内容 如:void set_time(Time &)
struct 不指明private和public则默认为是public类型;
class不指明private和public则默认为是private类型;但是建议常用class来建立类来体现C++的风格程序。
在类中常用的类型有private(私有的)、public(公用的)、protected(受保护的) ,其中protected声明成员是受保护的的成员,不能被类外访问,但可以被派生类成员函数访问。private(私有的)私有的成员函数只能被本类中的其他其他成员函数所调用。
2.成员函数在类外定义时一定要加上“::”,即作用域限定符,或作用域运算符。
3.类函数必须在类体中作原型的声明,然后再类外定义,否则会编译出错。
4.inline(内置函数)
在类体中定义的成员函数的规模一般都很小,而系统调用函数的过程所花费的时间开销相对比较大,如果调用一个函数的时间开销远远大于小规模函数体中全部语句的执行时间。为了减少时间开销,在内体中定义的成员函数不包括循环结构等控制,C++系统会自动将他们作为内置函数来处理。即把函数代码嵌入程序的调用点。
5.类的大小sizeof(Time)只取决于类中的数据成员的空间大小,与函数成员无关。
6.C++中专门设置了this指针来指向不同的对象。类内定义的成员函数和类外定义的成员函数都不占用对象的存储空间。
7。类是一个抽象的数据类型,不占用存储空间;而对象是实际存在的实体,是占用存储空间的,其数据成员是有值的,可以被引用。
8.声明只是一种形式,不包括具体内容 如:void set_time(Time &)
相关文章推荐
- Using GCC’s C++ Compiler
- C++ Primer Plus(第六版)--学习杂记(第六章)
- c语言中左移问题
- 默认参数使用技巧
- C++内存分配和拷贝构造函数写研究
- C语言关键字学习总结
- C++创建文件夹
- 用c语言输出九九乘法口诀
- 函数的可重入性理解
- 指针前钱解析
- C++多文件结构及预处理命令
- 内存泄漏以及常见的解决方法
- 再论C++之垃圾回收(GC)
- 分治法解决最大子数组问题 (C/C++)
- c++函数模板(function template)
- C语言程序设计(第二版)第11章例题
- VC++动态库DLL制作和调用
- 【C++】深拷贝
- c++函数重载笔记
- c++有默认参数的函数——笔记