Запитання з тегом «object-lifetime»

2
Це помилка компілятора C #, що розширюється протягом життя, об'єкта?
Я відповідав на питання про можливість закриття (законно) продовження життя об'єкта, коли я зіткнувся з деяким надзвичайно цікавим кодовим кодом з боку компілятора C # (якщо це має значення 4,0). Найкоротший докір, який я можу знайти, є наступним: Створіть лямбда, яка захоплює локальний під час виклику статичного методу, що містить …

3
Чи нормально повернути значення аргументу за замовчуванням за допомогою посилання const?
Чи нормально повернути значення аргументу за замовчуванням за посиланням const, як у наведених нижче прикладах: https://coliru.stacked-crooked.com/a/ff76e060a007723b #include <string> const std::string& foo(const std::string& s = std::string("")) { return s; } int main() { const std::string& s1 = foo(); std::string s2 = foo(); const std::string& s3 = foo("s"); std::string s4 = foo("s"); …


2
Варіація на тему вибору типу: тривіальна побудова на місці
Я знаю, що це досить поширена тема, але наскільки типовий UB легко знайти, я ще не знайшов цього варіанту. Отже, я намагаюся формально ввести об'єкти Pixel, уникаючи фактичної копії даних. Чи дійсно це? struct Pixel { uint8_t red; uint8_t green; uint8_t blue; uint8_t alpha; }; static_assert(std::is_trivial_v<Pixel>); Pixel* promote(std::byte* data, std::size_t …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.