Информация об изменениях

Сообщение Re[2]: Руссинович говорит - хватит от 20.09.2022 12:47

Изменено 20.09.2022 13:52 sergii.p

Re[2]: Руссинович говорит - хватит
Здравствуйте, Dair, Вы писали:

D>Здравствуйте, vsb, Вы писали:


vsb>>Прислушайтесь!


D>А этот Руст бинарно совместим с С++-библиотеками?


да. В rust можно поставить аттрибут для выравниявания полей в структуре по типу С++.
#[repr(C)]
struct Person{...}

С enum может возникнуть проблема. Вроде как rust утверждает, что он хранит просто underlying type под примитивными перечислениями (как и С++). Но вот что-то у меня нет доверия к таким заявлениям.
И совсем плохо с union. Вроде хорошего решения нет. Надо писать свою эмуляцию
Re[2]: Руссинович говорит - хватит
Здравствуйте, Dair, Вы писали:

D>Здравствуйте, vsb, Вы писали:


vsb>>Прислушайтесь!


D>А этот Руст бинарно совместим с С++-библиотеками?


да. В rust можно поставить аттрибут для выравниявания полей в структуре по типу С++.
#[repr(C)]
struct Person{...}

С enum может возникнуть проблема. Вроде как rust утверждает, что он хранит просто underlying type под примитивными перечислениями (как и С++). Но вот что-то у меня нет доверия к таким заявлениям.
И совсем плохо с union. Вроде хорошего решения нет. Надо писать свою эмуляцию. upd: таки есть отдельный union в rust. Проблема отсутствует