Pass by pointer & Pass by reference [duplicate]

Возможный дубликат:
В чем различия между указательной и ссылочной переменной в C++?
Есть ли преимущества передачи по указателю перед передачей по ссылке в C++?

В обоих случаях я достиг результата. Так когда же одно предпочтительнее другого? Каковы причины, по которым мы используем одно вместо другого?

#include 
using namespace std;
void swap(int* x, int* y)
{
    int z = *x;
    *x=*y;
    *y=z;
}
void swap(int& x, int& y)
{
    int z = x;
    x=y;
    y=z;
}

int main()
{
    int a = 45;
    int b = 35;
    cout<<"Before Swap\n";
    cout<<"a="<

Вывод

Before Swap
a=45 b=35
After Swap with pass by pointer
a=35 b=45

After Swap with pass by reference
a=45 b=35
42
задан Community 23 May 2017 в 11:47
поделиться