日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

类的真正形态

發布時間:2024/7/5 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 类的真正形态 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

類的真正形態

類的關鍵字

struct在C語言中已經有了自己的定義,必須繼續兼容
在C++中提供了新的關鍵字,class用于類定義
class和struct用法是完全相同

struct和class區別

用struct定義時,所有成員默認為public
用class定義時,所有成員默認為private

#include <stdio.h>struct A {// defualt to publicint i;// defualt to publicint getI(){return i;} };class B {// defualt to privateint i;// defualt to privateint getI(){return i;} };int main() {A a;B b;a.i = 4;printf("a.getI() = %d\n", a.getI());b.i = 4;printf("b.getI() = %d\n", b.getI());return 0; } D:\BaiduYunDownload\第2期 — 披荊斬棘\第16- 類的真正形態\代碼\16-1.cpp In function 'int main()': 17 9 D:\BaiduYunDownload\第2期 — 披荊斬棘\第16- 類的真正形態\代碼\16-1.cpp [Error] 'int B::i' is private 34 7 D:\BaiduYunDownload\第2期 — 披荊斬棘\第16- 類的真正形態\代碼\16-1.cpp [Error] within this context 19 9 D:\BaiduYunDownload\第2期 — 披荊斬棘\第16- 類的真正形態\代碼\16-1.cpp [Error] 'int B::getI()' is private 36 38 D:\BaiduYunDownload\第2期 — 披荊斬棘\第16- 類的真正形態\代碼\16-1.cpp [Error] within this context

實例:需求

開發一個用于四則運算的類
提供setOperator函數設置運算類型
提供setParameter函數設置運算參數
提供result函數進行運算
其返回值表示運算的合法性
通過引用參數返回結果

類的真正形態

C++中的類支持聲明和實現的分離
將類的實現和定義分開
.h頭文件中只有類的聲明
成員變量和成員函數的聲明
.cpp源文件中完成類的其他實現
成員函數的具體實現
operator.h

#ifndef _OPERATOR_H_ #define _OPERATOR_H_class 0perator { private:char mop;double mp1;double mp2; piblic:bool setOperator(char op);void setParameter(double p1,double p2);bool result(double&r); } #endif

Operator.cpp

#include "Operator.h" #include "stdio.h"bool Operator::setOperator(char op) {bool ret=false;if((op=='+')||(op=='-')||(op=='*')||(op=='/')){ret=true;mop=op;}else:{mop='\0';}return ret;}void Operator::setParameter(double p1,double p2) {mp1=p1;mp2=p2 }bool Operator::result(double&r) {bool ret=true;seitch(mop){case '/':if( (-0.000000001 < mP2) && (mP2 < 0.000000001) ){ret = false;}else{r = mP1 / mP2;}break;case '+':r = mP1 + mP2;break;case '*':r = mP1 * mP2;break;case '-':r = mP1 - mP2;break;default:ret = false;break;}return ret }int main() {Operator op;double r=0;op.setOperator('/');op.setParameter(9, 3);if( op.result(r) ){printf("r = %lf\n", r);}else{printf("Calculate error!\n");}return 0; }

總結

以上是生活随笔為你收集整理的类的真正形态的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。