Я создаю класс с именем student:
class Student{
public:
int getNumber() const {
return number;
}
virtual void setNumber(int number) {
Student::number = number;
}
private:
int number;
};
и преобразую его в IR, но одна часть меня сильно смутила:
%class.Student = type <{ i32 (...)**, i32, [4 x i8] }>
Я считаю, что часть i32 (...)**
предназначен для v-таблицы, часть i32
предназначена для int number
, а часть [4 x i8]
для выравнивания.Но я искал ссылки на язык и не смог найти, что означает i32 (...)**
, может кто-нибудь сказать мне, что это значит?