通过这个例子边可以看出区别,而且注意一定要用标准C++的样式
打好基础
#include <iostream> #include <cstdlib>
using namespace std;
int add1CallByValue(int t); //define function prototype
void add1ByPointer(int* t);
void add1ByReferrence(int& t);
int main(void) { int count=12; std::cout<<"add1CallByValue"; add1CallByValue(count); //call by value std::cout<<count<<endl; std::cout<<"add1CallByPointer"; add1ByPointer(&count); //call by pointer std::cout<<count<<endl; std::cout<<"add1ByReferrence"; add1ByReferrence(count); //call by referrence std::cout<<count<<endl; system("pause"); return(0); }
int add1CallByValue(int t) { return(t+1); }
void add1ByPointer(int* p) { *p+=1; }
void add1ByReferrence(int& t) { t+=1; } 
|