Запитання з тегом «null-pointer»



2
Коли виклик функції-члена на нульовому екземплярі призводить до невизначеної поведінки?
Розглянемо наступний код: #include <iostream> struct foo { // (a): void bar() { std::cout << "gman was here" << std::endl; } // (b): void baz() { x = 5; } int x; }; int main() { foo* f = 0; f->bar(); // (a) f->baz(); // (b) } Ми очікуємо (b)краху, …

8
Не вдається знайти @Nullable всередині javax.annotation. *
Я хочу використовувати @Nullable анотацію для усунення NullPointerExceptions. Я знайшов кілька підручників у мережі, я помітив, що ця анотація надходить із пакету javax.annotation.Nullable; але коли я імпортую його, створюється помилка компіляції: не вдається знайти символ

1
Що таке накладні витрати на тип опції Rust?
У Rust посилання ніколи не можуть бути нульовими, тому у випадку, коли вам насправді потрібне null, наприклад, пов'язаний список, ви використовуєте Optionтип: struct Element { value: i32, next: Option<Box<Element>>, } Скільки накладених на це витрат з точки зору виділення пам’яті та кроків до розмежування порівняно з простим покажчиком? Чи існує …

4
Чи гарантовано безпечно виконувати memcpy (0,0,0)?
Я не настільки добре обізнаний із стандартом С, тож будьте ласкаві. Я хотів би знати, чи гарантовано це, за стандартом, memcpy(0,0,0)безпечно. Єдине обмеження, яке я міг знайти, полягає в тому, що якщо області пам'яті перекриваються, тоді поведінка невизначена ... Але чи можна вважати, що області пам'яті тут перекриваються?

1
Як працює впровадження c ++ nullptr?
Мені цікаво знати, як nullptrпрацює. Стандарти N4659 і N4849 кажуть: він повинен мати тип std::nullptr_t; ви не можете прийняти його адресу; його можна безпосередньо перетворити на вказівник і вказівник на член; sizeof(std::nullptr_t) == sizeof(void*); його перетворення в boolє false; його значення може бути перетворене на інтегральний тип однаково (void*)0, але …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.