const
Классы добавляют новый тип перегрузки функций - const
перегрузку.
При доступе через ссылку, определённую через const
можно вызвать только методы, определённые как const
.
Если ссылка доступна для записи, то могут быть вызваны методы обоих типов, причем предпочтение будет отдано версии без const
.
class A {
string a() { return "1"; }
string a() const { return "2"; }
}
void [[[main|main.html]]](){
A a;
A@ b = a;
const A@ c = a;
A@ const d = a;
print( a.a() ); // 1
print( b.a() ); // 1
print( c.a() ); // 2
print( d.a() ); // 1
}
Last modified: 16 October 2024