标签:销毁 no int who 创建对象 C++ Student no1
#include <iostream> #include <string> using namespace std; class Student { public: Student(const string& name1, int age1, int no1) { name = name1; age = age1; no = no1; } private: string name; public: int age; int no; void who(void) { cout << "我叫" << name << endl; cout << "今年" << age << "岁" << endl; cout << "学号是:" << no << endl; } }; int main() { Student s("张三",25,10011); //在栈区创建单个对象格式一 //Student s 如果是无参--没有括号 s.who(); Student s1 = Student("李四", 26, 10012); //在栈区创建单个对象格式二 //单个参数时,后面的类名可以省略,比如:string str="liming" s1.who(); //在栈区创建多个对象--对象数组 Student ss[2] = { Student("张三三",25,10013),Student("李四四",25,10014) }; ss[0].who(); Student* d = new Student("赵云", 29, 10015);//在堆区创建单个对象--对象指针 //new操作符会先分配内存再调用构造函数,完成对象的创建和初始化;而如果是malloc函数只能分配内存,不会调用构造函数,不具备创建对象能力 d->who(); delete d; //销毁单个对象 Student* p = new Student[2]{ //在堆区创建多个对象--对象指针数组 Student("刘备",40,10016),Student("刘彻",45,10017) }; p[0].who(); delete[] p; //销毁 return 0; }
标签:销毁,no,int,who,创建对象,C++,Student,no1 来源: https://www.cnblogs.com/liming19680104/p/13488504.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。