C++調用無參構造函數


之前不知道為什么調用無參構造函數不能加(),是因為加上了()這樣的形式就和函數聲明語句一樣了

#include<bits/stdc++.h>
using namespace std; const int maxn=1e5+5; class people{ public: people(){ printf("123\n"); } }; class student :public people{ public: int x=1; //調用下面這個構造函數,如果不傳參數會和 student()重復,如果傳一個參數會和 student(int x)重復 // student(int x=2,int y=1){ // printf("111\n"); // }
        student(int x){ printf("222\n"); } student(){ printf("5555\n"); } }; int main() { //下面這樣寫不是調用類的無參構造函數,而是一個函數的聲明(可不是創建一個student類型的對象)。所以調用無參構造函數不要加() //student stu();
 student stu; printf("%d\n",stu.x); return 0; }

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM