當前位置:
首頁 >
C 过渡 C++ 1
發布時間:2025/4/16
36
豆豆
生活随笔
收集整理的這篇文章主要介紹了
C 过渡 C++ 1
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1,C++
GCC 編譯C++兼容C代碼
#include?<stdio.h> #include?<string.h>struct?student {int?ID;char?name[100]; };int?main() {struct?student?st;st.ID?=?10;strcpy(st.name,"tom");printf("%d,%s\n",st.ID,st.name);return??0; }編譯運行 chunli@ubuntu:~/file$?g++?main.cpp?&&?./a.out 10,tomC++ 結構體,構造函數,析構函數
chunli@ubuntu:~/file$?cat?main.cpp? #include?<stdio.h> #include?<string.h>struct?student {int?ID;char?name[100];void?set_id(int?id) //C++中結構體支持函數了{ID?=?id;}void?set_name(const?char?*name){strcpy(this->name,name);}//構造函數????????????student(int?ID,const?char?*name) {this?->?ID?=?ID;strcpy(this?->name,name);printf("結構體的構造函數\n");}//析構函數????????????~student() {printf("結構體的析構函數\n");}};int?main() {student?st(99,"忘情水");printf("%d,%s\n",st.ID,st.name);return??0; }chunli@ubuntu:~/file$? chunli@ubuntu:~/file$?g++?main.cpp?&&?./a.out 結構體的構造函數 99,忘情水 結構體的析構函數C++結構體的指針
chunli@ubuntu:~/file$?cat?main.cpp? #include?<stdio.h> #include?<string.h>struct?student {int?ID;char?name[100];void?set_id(int?id) //C++中結構體支持函數了{ID?=?id;}void?set_name(const?char?*name){strcpy(this->name,name);}//構造函數????????????student(int?ID,const?char?*name) {this?->?ID?=?ID;strcpy(this?->name,name);printf("結構體的構造函數\n");}//析構函數????????????~student() {printf("結構體的析構函數\n");}};int?main() {student?*st?=?new?student(99,"我是C++結構體指針");printf("%d,%s\n",st->ID,st->name);delete?st;return??0; }chunli@ubuntu:~/file$?g++?main.cpp?&&?./a.out 結構體的構造函數 99,我是C++結構體指針 結構體的析構函數 chunli@ubuntu:~/file$C++ 結構體 轉類
chunli@ubuntu:~/file$?cat?main.cpp? #include?<stdio.h> #include?<string.h>class?student { public:int?ID;char?name[100];void?set_id(int?id) //C++中結構體支持函數了{ID?=?id;}void?set_money(int?money){this->money?=?money;}int?get_money(){return?money;}void?set_name(const?char?*name){strcpy(this->name,name);}//構造函數????????????student(int?ID,const?char?*name) {this?->?ID?=?ID;strcpy(this?->name,name);printf("結構體的構造函數\n");}//析構函數????????????~student() {printf("結構體的析構函數\n");}private:int?money;//在外面是不允許直接訪問的 };int?main() {student?*st?=?new?student(99,"我是C++結構體指針");st->set_money(9999);int?money?=?st->get_money();printf("ID??=?%d,name?=?%s,money?=?%d\n",st->ID,st->name,money);delete?st;return??0; }chunli@ubuntu:~/file$?g++?main.cpp?&&?./a.out 結構體的構造函數 ID??=?99,name?=?我是C++結構體指針,money?=?9999 結構體的析構函數 chunli@ubuntu:~/file$C++ 類文件分開寫
chunli@ubuntu:~/file$?vim?main.cpp? #include?<stdio.h> #include?<string.h> #include?"student.h" int?main() {student?*st?=?new?student(1,"Linus?Torvalds");st->set_money(999999);printf("ID??=?%d\n",st->ID);printf("name?=?%s\n",st->name);printf("money?=?%d\n",st->get_money());delete?st;return??0; }chunli@ubuntu:~/file$?vim?student.h? #ifndef?STUDENT_H #define?STUDENT_H class?student { public:int?ID;char?name[100];void?set_id(int?id); //C++中結構體支持函數了void?set_money(int?money);int?get_money();void?set_name(const?char?*name);student(int?ID,const?char?*name); ~student(); private:int?money;//在外面是不允許直接訪問的 }; #endif?//STUDENT_H chunli@ubuntu:~/file$?chunli@ubuntu:~/file$?vim?student.cpp? #include?<stdio.h> #include?<string.h> #include?"student.h"void?student::set_id(int?id) //C++中結構體支持函數了 {ID?=?id; }void?student::?set_money(int?money) {this->money?=?money; } int?student::?get_money() {return?money; } void?student::?set_name(const?char?*name) {strcpy(this->name,name); }//構造函數???????????? student::student(int?ID,const?char?*name) {this?->?ID?=?ID;strcpy(this?->name,name);printf("構造函數被調用\n"); } //析構函數???????????? student::~student() {printf("析構函數被調用\n"); }編譯執行: chunli@ubuntu:~/file$??g++?main.cpp?student.cpp?&&?./a.out? 構造函數被調用 ID??=?1 name?=?Linus?Torvalds money?=?999999 析構函數被調用c++實現在主函數之前執行代碼
#include?<stdio.h> class?first { public:?first()//構造函數,與類名相同。{printf("myclass開始?\n");}~first()//析構函數,與類名相同。{printf("myclass結束?\n");}};first?haha;//定義一個類int?main() {printf("main?開始?\n");printf("main?結束?\n");return??0; }chunli@ubuntu:~/class$?g++?main.cpp?&&?./a.out? myclass開始? main?開始? main?結束? myclass結束轉載于:https://blog.51cto.com/990487026/1786271
總結
以上是生活随笔為你收集整理的C 过渡 C++ 1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内核:多内核操作模式
- 下一篇: C++的iostream标准库介绍+使用