Я думаю, я не могу понять, почему это не работает. Я всегда думал, что я могу использовать указатель 'this' внутри конструктора, но я никогда не знал, что не могу использовать 'this' в списке инициализации.
#include <iostream>
class A {
public:
int a;
int b;
A(int a = 0, int b = 0) : this->a(a), this->b(b) { }
void print() {
std::cout << a << ", " << b << std::endl;
}
};
int main() {
A a;
a.print();
}
Мне интересно узнать подробности, связанные с этим.