首页 / C++ / [C++]C++类基本语法
[C++]C++类基本语法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[C++]C++类基本语法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2058字,纯文字阅读大概需要3分钟。
内容图文
本测试代码包括以下内容:
(1)如何使用构造函数;
(2)默认构造函数;
(3)对象间赋值;
(4)const使用语法;
(5)定义类常量: 一种方法是用enum,另一种方法是使用static。
#include <iostream> using namespace std; enum sexType { MAN, WOMAN }; class Human { //the default is private private: string name; sexType sex; int age; //(5) 定义类常量: 一种方法是用enum,另一种方法是使用static enum{LEN=1}; static const int LEN2 = 3; public: //如果类定义中没有提供任何构造函数,则编译器提供默认构造函数。但,如果类中定义了构造函数,那么编写者必须同时提供一个默认构造函数。 //有两种方法提供默认构造函数: //(1) 定义一个没有参数的构造函数:Human(); //(2) 为非默认构造函数的参数提供默认值: Human(string m_name="no name", int m_age=0, sexType m_sex=MAN); //两种定义方式只能二选一 Human(); Human(string m_name, int m_age, sexType m_sex); Human(int m_age); ~Human(); //定义在类声明中的方法为内联方法。也可以使用inline关键字将函数定义在类声明外部。 void show() const //const加在函数名后面表示该函数不会修改该类的数据成员。 { cout<<"This is "<<name<<", sex: "<<sex<<", "<<age<<" Years old."<<endl; } }; Human::Human() { cout<<"default construct function"<<endl; } Human::Human(string m_name, int m_age, sexType m_sex) { cout<<"construct function: "<<m_name<<endl; name = m_name; age = m_age; sex = m_sex; } Human::Human(int m_age) { age = m_age; } Human::~Human() { cout<<"destroy function: "<<name<<endl; } int main() { cout << "This is test code of C++ class: "<< endl; { //(1) use of construct function Human jack = Human("Jack", 30, MAN); //显示调用 Human jerry("Jerry", 26, MAN); //隐式调用 Human *pTom = new Human("Tom", 10, MAN); //New调用 //当构造函数只有一个参数时,可以直接用赋值语句赋值。只有一个参数的构造函数将会被自动调用 Human marry = 11; //赋值调用 //(2) defaults construct function Human Lucy; //(3) 赋值对象 Human James; James = Human("James", 28, MAN); //创建一个临时对象James,copy一份儿该对象赋值给James变量。紧接着该临时对象会被销毁。 //(4) const const Human Thomas("Thomas", 29, MAN); Thomas.show(); //The show method must define with 'const' } return 0; }
运行结果为:
转载于:https://www.cnblogs.com/Jerryli/p/3915358.html
内容总结
以上是互联网集市为您收集整理的[C++]C++类基本语法全部内容,希望文章能够帮你解决[C++]C++类基本语法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。