Как вы, кажется, знаете, std::uintptr_t
- это стандартный тип из заголовка <cstdint>
(начиная с C ++ 11).
Строка, которую вы не понимаете, представляет собой простое объявление переменной + определение:
uintptr_t value(name.n_value);
Это объявляет переменную с именем value
типа uintptr_t
и инициализирует ее значением name.n_value
.Для фундаментальных типов это эквивалентно:
uintptr_t value = name.n_value;
Я попытался написать программу hello world, такую как:
int main(){ uintptr_t a(80); return 0;}
, и она возвращает ошибку [...]
Какая ошибка?Всегда публикуйте сообщение об ошибке, которое вы получаете, никто не может помочь вам с «Я получил ошибку»!
Я подозреваю, что ошибка, которую вы получаете, вызвана тем, что uintptr_t
не определено, если вы не включите <cstdint>
, а затем вы должны использовать префикс std
namespace.