看板Programming
标 题Re: 请问静态函数?
发信站无名小站 (Thu Sep 13 20:28:57 2007)
转信站ptt!ctu-reader!ctu-peer!news.nctu!csnews.cs.nctu!news.cs.nctu!wretch
※ 引述《jiannrong (大改名片档)》之铭言:
> 这在书本上看到,这个程式的目的是介绍朋友类别,
> 只是我有一个疑问,为何这里的
> static void speed(int power);
> 前面要加上static?
> 这是指这是一个静态函数吗?
> 那静态函数的意义是什麽呢?
静态函数是让你不需要宣告物件 就可以使用该函数
> 谢谢!
> #include <iostream>
> using namespace std;
> class Car{
> private:
> int num;
> double gas;
> friend class Spec; //friend class
> };
> class Spec//friend class
> {
> public:
> static void speed(int power);
> };
> void Spec::speed(int power)
> {
> int motive=power;
> Car March;
> March.num=200;
> March.gas=20.0;
> cout<<"--March--\n"<<"传入为"<<motive<<"号码为"<<March.num;
> cout<<"Gas为"<<March.gas<<endl;
> }
> int main()
> {
> Spec::speed(300);
因为使用静态函数 所以可以这样用
不然要像下面这样用
Spec sp;
sp.speed(300);
> system("PAUSE");
> return 0;}
至於为什麽他要用静态函数 那是因为这样写比较方便
在实际上用法 则需要看当时需求
--
我的程式设计网志
http://blog.yam.com/swwuyam
--
夫兵者不祥之器物或恶之故有道者不处君子居则贵左用兵则贵右兵者不祥之器非君子
之器不得已而用之恬淡为上胜而不美而美之者是乐杀人夫乐杀人者则不可得志於天下
矣吉事尚左凶事尚右偏将军居左上将军居右言以丧礼处之杀人之众以哀悲泣之战胜以
丧礼处之道常无名朴虽小天下莫能臣侯王若能守之万物将自宾天地相合以降甘露民莫
之令而自均始制有名名亦既有夫亦将知止知止可以不殆譬道之在天 61.57.152.222海