Tôi đã đọc một C++ hướng dẫn cơ bản khi tôi phải đối mặt vớigì là :: * trong C++
::*
trong đoạn mã sau. Tôi có thể biết điều đó là:
class A {
public:
protected:
int i;
};
class B : public A {
friend void f(A*, B*);
void g(A*);
};
void f(A* pa, B* pb) {
// pa->i = 1;
pb->i = 2;
// int A::* point_i = &A::i;
int A::* point_i2 = &B::i;
}
void B::g(A* pa) {
// pa->i = 1;
i = 2;
// int A::* point_i = &A::i;
int A::* point_i2 = &B::i;
}
void h(A* pa, B* pb) {
// pa->i = 1;
// pb->i = 2;
}
int main() { }
dựa trên C++ của tôi kiến thức cho đến nay, tôi không thể hiểu được cái gì đó như
int A::* point_i2
bạn có thể giúp tôi không?
cảm ơn bạn.
Hướng dẫn C++ cơ bản? Không có "cơ bản" C++ bất cứ điều gì nên được bao gồm các con trỏ thành viên. Bạn có liên kết đến hướng dẫn đó không? –
@NicolBolas có thể không rất cơ bản :) http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Fcplr129.htm – rahman