NeuroLook
رفتن به کانال در Telegram
1 669
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-37 روز
-1130 روز
آرشیو پست ها
1 669
Академия размышлений и нейронаук @brainstorm_neuro_academy ждет вас! Исследуйте возможности мозга и умственные способности с лучшими специалистами
1 669
Новый взгляд на искусственный интеллект с @fresh_perspective_ai! Погружайтесь в увлекательный мир AI с нами. Будущее уже здесь."
1 669
Цифровые указания для будущего в @directive_digital_min! Будьте на шаг впереди в мире цифровых технологий и трендов. Присоединяйтесь к нам!"
1 669
Ежедневная доза инноваций и вдохновения в @daily_dose_mingosa! Получайте свою порцию новостей из мира технологий, науки и будущего. Подписывайтесь сейчас!"
1 669
@technocrats_legacys — Современные технологии и инновации ждут вас здесь. Присоединяйтесь для увлекательного погружения в мир высоких технологий."
1 669
Станьте настоящими королями метавселенной с @genuine_metaverse_kings! Исследуйте новые реальности, технологии и перспективы виртуального мира вместе с лучшими."
1 669
@aether_magic_marzagan — Обсуждайте виртуальную реальность, киберпространство и метавселенные вместе с нами.
1 669
@enchanting_ai_magic — Погружайтесь в магию алгоритмов, машинного обучения и технологий будущего.
1 669
@guardians_skill_sheet — Развивайте свои компетенции в IT, программировании и не только вместе с экспертами.
1 669
@union_digital_soulss — Откройте для себя новые аспекты технологий, искусственного интеллекта и киберпространства с нами.
1 669
В мире игр и технологий - наш канал @arena_gaming_tech_joy! Узнавайте последние новости игровой индустрии и обсуждайте их вместе с единомышленниками.
1 669
Присоединяйтесь к @primer_pc_encyclopedia - вашему источнику первичных знаний о ПК и оборудовании!
1 669
Присоединяйтесь к @assorted_it_musings для увлекательных размышлений из мира IT! Откройте для себя новые горизонты и погрузитесь в обсуждения с опытными специалистами
1 669
🖥 Задачка с собеседования от Сбера:
Вставьте код функции
Mutate (без использования ключевого слова unsafe), чтобы на консоль вывелось «404». Сигнатуру функции не менять, замыкания не ловить
const string constStr = "000";
Mutate(constStr);
var nonConst = "000";
Console.WriteLine(nonConst);
void Mutate(string str)
{
// write your code here
}
Вот пример решения, которое полностью устроило лида, который собеседовал кандидата.
void Mutate(string str)
{
GCHandle handle = GCHandle.Alloc(str, GCHandleType.Pinned);
IntPtr pointer = handle.AddrOfPinnedObject();
Marshal.WriteByte(pointer, 0, (byte)'4');
Marshal.WriteByte(pointer, 4, (byte)'4');
handle.Free();
}
Весь смысл кроется в том, как работают строки в .net (интернирование), что такое pinned object и как работать с unmanaged кодом.
Идея интернирования строк состоит в том, чтобы хранить в памяти только один экземпляр типа String для идентичных строк. При старте нашего приложения виртуальная машина создаёт внутреннюю хэш-таблицу, которая называется таблицей интернирования (иногда можно встретить название String Pool).
Pinned Object Heap (POH, Куча Закрепленных Объектов). В отличие от других видов кучи, эта доступна разработчикам явно (что не характерно для сборщика мусора).
Пишите свое решение в комментариях👇1 669
. 🏰 Шагните в @fortress_of_code для крепости знаний и экспертизы по программированию. Острите свои навыки и покоряйте мир программирования!
1 669
🕵️♂️ Улучшите свои навыки тестирования с @insightful_tester_guide. Овладейте искусством тестирования и поднимите свою экспертизу на новый уровень.
1 669
📜 Отправляйтесь в эпические приключения с @epic_tales_of_java. Погрузитесь в захватывающие истории и исследуйте новые горизонты.
1 669
📚 Вызываем всех любителей книг! Подписывайтесь на @Best_Litmakers для литературных сокровищ и откройте мир захватывающих рассказов и глубокой мудрости.
