Форум программистов, компьютерный форум CyberForum.ru

Таблица символов для компилятора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить количество столбцов и строк матрицы не содержащих отрицательных значений http://www.cyberforum.ru/cpp/thread1778720.html
Определите количество столбцов и количество строк двумерного массива, в которых не содержится ни одного отрицательного элемента. Заранее спасибо.
C++ Как заполнить двумерный массив определенным числом определенное количество раз? Пишу консольного Сапёра и столкнулся с такой проблемой: пользователю нужно ввести количество мин, после чего данное количество мин должно быть расположено случайным образом в двумерном массиве, причем мина обозначается цифрой "2", остальное в массиве - нули. Подскажите как это можно реализовать http://www.cyberforum.ru/cpp/thread1778708.html
C++ Перевод числа из hex в dec
Привет, можете подсказать как можно перевести 16-ричное число произвольной длины (например, заданное с помощью строки) в десятичную сс? (также можно в строку)
C++ Запрет запуска второй копии приложений
Нужно запретить запуск второй копии чужого приложения. Т.е. пользователь ткнул 5 раз на ярлык GTA5 в результате в процессе висит 2 GTA5, что не есть хорошо. Как этого можно избежать? Пока что идея такова. Мое приложение висит в памяти. Ярылк переделывается на что-то вроде "C:\myprogramm\app.exe" -name "GTA5" -launcher "C:\Games\GTA5\GTAVplay.exe" -path "C:\Games\GTA5\GTAV.exe" Параметры...
C++ Final для вложенной структуры http://www.cyberforum.ru/cpp/thread1778648.html
class A{ class B {..} final; }; так класс B теперь входит в размер A, но не инициализируется. это баг? потому что я нигде не нашел про такое использование
C++ Stack. определение шаблона функции testStack. (хочу разобраться в коде) Вот эта программа. Хочу разобраться в коде. #include <iostream> #include <string> #include <Stack> using namespace std; template <typename T> void testStack( Stack< T > &theStack,// показывает ошибку на Stack с требованием точки с запятой! поясните что и как. подробнее

Показать сообщение отдельно
nonedark2008
813 / 571 / 110
Регистрация: 28.07.2012
Сообщений: 1,522
11.07.2016, 20:24     Таблица символов для компилятора
Havana, хмм. Если так возможно, то бы посоветовал посмотреть в сторону llvm. С ним будет проще в плане генерации кода и некоторых абстракций языка.
Цитата Сообщение от Havana Посмотреть сообщение
Если вы знаете, как это можно сделать проще/сложнее/иначе я буду благодарна за идеи.
В этом случае ваша таблица превращается в дерево.
Корень - глобальная область видимости, узлы - функции, циклы (различные выражения со своими областями видимости).
Когда идет обработка какого-то выражения, то для него в этом дереве находится его область видимости (либо поиском по уникальному имени, либо просто привязать указатель заранее). Если встречаем какое-то имя, то ищем его в текущей области, не нашли - поднимаемся выше по дереву.

Цитата Сообщение от Havana Посмотреть сообщение
Таблица должна быть глобальной для других классов, она не должна создаваться заново при добавлении каждого символа и при этом должна быть возможность создавать временные таблицы для подпрограмм.
Они не временные. Хотите использовать синглтон - используйте (да там простая глобальная переменная подойдет в общем-то), но в начале лучше разобраться что за структура данных им будет поддерживаться.
Я бы посоветовал как пример посмотреть реализацию каких-нибудь компиляторов попроще, для того же llvm есть кучка неплохих примеров (на английском конечно).
 
Текущее время: 11:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru