Tôi đang tìm câu trả lời chi tiết hơn trong dự thảo làm việc N3797 và tôi đã tìm thấy những điều sau đây:
§8.3.3:
Do đó, một tuyên bố của một định danh riêng có dạng T D
trong đó T
có dạng attribute-specifier-seq_*opt* decl-specifier-seq
và D
là người khai báo.
§7.1:
decl-specifier:
storage-class-specifier
type-specifier
function-specifier
friend
typedef
constexpr
decl-specifier-seq:
decl-specifier attribute-specifier-seq_*opt*
decl-specifier decl-specifier-seq
§7.1.6:
type-specifier:
trailing-type-specifier
class-specifier
enum-specifier
§8.3.1:
Trong một tuyên bố T D
nơi D
có dạng * attribute-specifier-seq_*opt* cv-qualifier-seq_*opt* D1
và loại của định trong tờ khai T D1
là “có nguồn gốc-declarator-type-list T
”, sau đó loại của các định danh của D
là “có nguồn gốc-declarator-type -list cv-vòng-seq con trỏ đến T
.”
Bây giờ class-specifier
chứa class
từ khóa bên trong. Do đó, class A * A
là cấu trúc ngữ pháp hợp lệ, trong đó * A
là người khai báo.
Nguồn
2014-05-05 11:55:11
những gì hiện A * Một dòng làm, không có ý nghĩa –
@TejasPatel nó tuyên bố một biến 'A' của loại' A * '. –
@LuchianGrigore Trong ví dụ thứ hai, nó sẽ không gọi một nhà điều hành * nếu nó tồn tại? –