Size: a a a

2020 October 06

A

Alex in cloud_flood
источник

ВН

Виталий На Заборе... in cloud_flood
Как там обеспечивается отсутствие утечек, если надо например тупо выделить буфер на 4кб?
источник

ВН

Виталий На Заборе... in cloud_flood
Все на стеке что ль выделять
источник

A

Alex in cloud_flood
Буфер низя
источник

ВН

Виталий На Заборе... in cloud_flood
Alex
Буфер низя
А что можно
источник

ВН

Виталий На Заборе... in cloud_flood
А как они конпелятор тогда написали если ничо низя
источник

A

Alex in cloud_flood
Вышел из контекста — отдал память
источник

A

Alex in cloud_flood
Если я прально понемаю
источник

ВН

Виталий На Заборе... in cloud_flood
Alex
Вышел из контекста — отдал память
Ну то есть все на стеке
источник

ВН

Виталий На Заборе... in cloud_flood
Но... это же... жопа
источник

A

Alex in cloud_flood
А это на реализацию надо смотреть
источник

A

Alex in cloud_flood
Во щто оно там компилится
источник

ВН

Виталий На Заборе... in cloud_flood
There will be no GC. Like the home page says, very simple cases are cleaned up. For the rest, manual memory management is required.
источник

A

Alex in cloud_flood
Ага
источник

A

Alex in cloud_flood
А в доке хурма ваще написана
источник

A

Alex in cloud_flood
Смое интересное не сделали короч
источник

A

Alex in cloud_flood
А как в педорасте сделано, ты не изучал?
источник

A

Alex in cloud_flood
А в педорасте есть разные пойнтеры
источник

A

Alex in cloud_flood
Есть арк пойнтер
источник

A

Alex in cloud_flood
fn foo() {
   let x: @int = @1024;     // allocate space and initialize an int
                            // on the heap
   bar(x);                  // pass it to bar
   println(fmt!("%d", *x)); // print it on the screen
} // <-- the memory can be freed here

fn bar(x: @int) {
   let y: @int = x;         // make a new smart pointer to x
} // <-- despite y going out of scope, the memory is *not* freed her
источник