直接上代碼:ios
#include<stdio.h> #include<string> #include<iostream> using namespace std; class Student { private: int age; string name; public: Student(int, string); void show(int _age, string _name); void show2(); }; Student::Student(int _age, string _name) { this->age = _age; this->name = _name; } void Student::show(int _age, string _name) { //printf("Age : %d\n Name : %s", _age, _name); cout<<"Age : "<<_age<<"\nName : "<<_name<<endl; } void Student::show2() { cout<<"Age : "<<this->age<<"\nName : "<<this->name<<endl; } int main() { Student s(16, "puyangsky"); s.show(14, "puyangsky"); s.show2(); Student *s1 = new Student(16, "puyangsky"); s1->show2(); return 0; }
定義了一個Student類,在main方法中使用了兩種方法去實例化對象,第一個對象s是直接用 類名 對象名(參數1,..)來定義的,第二個對象是經過指針定義,類名 *指針名 = new 類名(參數1,..)。函數
另外,若是直接經過類名定義一個對象的話,對象使用其成員變量和函數時是經過點的形式:this
Student s1(13, "Amy"); s1.age = 15; s1.show();
若是是經過指針定義對象的話,則是經過->來訪問其變量和函數:spa
Student *s2 = new Student(14, "Amy"); s2->age = 12; s2->show();