В С++ передача ссылок const является обычной практикой - например:
#include <iostream>
using namespace std;
class X
{
public :
X() {m_x = 0; }
X(const int & x) {m_x = x; }
X(const X & other) { *this = other; }
X & operator = (const X & other) { m_x = other.m_x; return *this; }
void print() { cout << m_x << endl; }
private :
int m_x;
};
void main()
{
X x1(5);
X x2(4);
X x3(x2);
x2 = x1;
x1.print();
x2.print();
x3.print();
}
Этот простой пример иллюстрирует, как это делается - в значительной степени. Однако я заметил, что в С# это, похоже, не так. Должен ли я передавать ссылки const в С#? для чего мне нужно ключевое слово "ref"? Обратите внимание, что я знаю и понимаю, что такое ссылочные и ссылочные типы С#.