#include <iostream> #define pi 3.14 using namespace std; class myCircle { // 修饰的属性和方法只能在类的内部访问,不能在类的外部访问 private: int m_r; double m_s; // 修饰的属性和方法可以在类的内部访问,也可以在类的外部访问 public: int getR(){ return m_r; } void setR(int r){ m_r = r; } double getS(){ return m_s; } void setS(){ m_s = pi*m_r*m_r; } // 修饰的属性和方法只能在类的内部访问,不能再类的外部访问 protected: }; //类的指针做函数参数 void printCircle01(myCircle *myC){ myC->setS(); cout<<myC->getS()<<endl; } //类的引用做函数参数 void printCircle02(myCircle &myC){ myC.setS(); cout<<myC.getS()<<endl; } //类的普通变量做函数参数 void printCircle03(myCircle myC){ } int main(){ //定义类的变量 myCircle c1,c2,c3; // c1.m_r = 20; //因为m_r时私有属性,所以在外部不能访问 c1.setR(10); //可以在外部通过公有setR()方法来访问内部私有属性m_r c1.setS(); cout<<c1.getS()<<endl; c2.setR(5); //当形参为指针时,实参必须要加& printCircle01(&c2); c3.setR(10); //当形参为引用时,实参必须为变量本身 printCircle02(c3); return 0; }
原文:http://blog.csdn.net/my_wade/article/details/47733551