通过这个例子边可以看出区别,而且注意一定要用标准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;
}