This is not exactly a property, but it does what you want the simple way:
class Foo {
int x;
public:
const int& X;
Foo() : X(x) {
...
}
};
Here the big X behaves like public int X { get; private set; } in C# syntax. If you want full-blown properties, I made a first shot to implement them here.