Таблица | Карточка | RUSMARC | |
Разрешенные действия: –
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Группа: Анонимные пользователи Сеть: Интернет |
Аннотация
Магистерская диссертация посвящена рассмотрению возможностей автоматизации процессов миграции исходного кода, написанного согласно стандарту C++14 в исходный код в рамках стандарта C++03. В работе произведен краткий обзор отличий указанных стандартов, а также рассмотрены способы автоматического преобразования части нововведений C++14 в аналогичные по функциональности конструкции из C++03. Также в работе кратко описаны возможности по созданию инструментов для преобразования исходного кода, предоставляемых программным интерфейсом “Clang LibtTooling".
Права на использование объекта хранения
Место доступа | Группа пользователей | Действие | ||||
---|---|---|---|---|---|---|
Локальная сеть ИБК СПбПУ | Все | |||||
Интернет | Авторизованные пользователи СПбПУ | |||||
Интернет | Анонимные пользователи |
Оглавление
- ВВЕДЕНИЕ
- 1 Актуальность работы
- 1.1 Современное состояние языка C++
- 1.2 Существующие примеры миграции кода
- 1.2.1 Компиляторы в JavaScript
- 1.2.2 Программный пакет ROSE
- 1.2.3 DMS Software Reengineering Toolkit
- 1.2.4 Компиляторы SystemC
- 2 Поиск отличий в стандартах языка
- 2.1 Выбор инструментария
- 2.2 Список нововведений C++14 относительно C++03
- 2.2.1 Семантика переноса
- 2.2.2 Инициализация полей
- 2.2.3 Шаблоны с переменным числом аргументов
- 2.2.4 Списки инициализации
- 2.2.5 Универсальная инициализация
- 2.2.6 Статическая диагностика
- 2.2.7 Вывод типов
- 2.2.8 Альтернативный синтаксис функции
- 2.2.9 Лямбда-выражения
- 2.2.10 Угловые скобки
- 2.2.11 Аргументы шаблона по-умолчанию для функций
- 2.2.12 Псевдонимы шаблона и типа
- 2.2.13 Внешние шаблоны
- 2.2.14 Константа нулевого указателя
- 2.2.15 Улучшенные перечисления
- 2.2.16 Стандартный синтаксис атрибутов
- 2.2.17 Обобщённые константные выражения
- 2.2.18 Управление выравниванием
- 2.2.19 Делегация конструкторов
- 2.2.20 Наследование конструкторов
- 2.2.21 Изменения в запрете явного преобразования
- 2.2.22 Новые строковые литералы
- 2.2.23 <<Необработанные>> строковые литералы
- 2.2.24 Пользовательские литералы
- 2.2.25 Явное указание методов по-умолчанию
- 2.2.26 Явный запрет использования методов
- 2.2.27 Получение размера полей без создания экземпляра
- 2.2.28 <<Прозрачные>> пространства имен
- 2.2.29 Улучшенные объединения
- 2.2.30 Циклы по коллекции
- 2.2.31 Явное замещение виртуальных функций и финальность
- 2.2.32 Литералы двоичных чисел
- 2.2.33 Шаблоны переменных
- 2.2.34 Разделители разрядов
- 3 Рассмотрение возможностей автоматической миграции
- 3.1 Clang, как инструмент работы с исходным кодом
- 3.1.1 Возможности программного интерфейса LibTooling
- 3.2 Описание способов миграции
- 3.2.1 Инициализация полей
- 3.2.2 Универсальная инициализация
- 3.2.3 Вывод типов
- 3.2.4 Лямбда-выражения
- 3.2.5 Псевдонимы шаблона и типа
- 3.2.6 Улучшенные перечисления
- 3.2.7 Делегация конструкторов
- 3.2.8 Наследование конструкторов
- 3.2.9 Изменения в запрете явного преобразования
- 3.2.10 <<Необработанные>> строковые литералы
- 3.2.11 Пользовательские литералы
- 3.2.12 Явное указание методов по-умолчанию
- 3.2.13 Явный запрет использования методов
- 3.2.14 Получение размера полей без создания экземпляра
- 3.2.15 Циклы по коллекции
- 3.2.16 Явное замещение виртуальных функций и финальность
- 3.2.17 Литералы двоичных чисел
- 3.2.18 Шаблоны переменных
- 3.2.19 Разделители разрядов
- 3.1 Clang, как инструмент работы с исходным кодом
- 4 Тестирование
- 4.1 Реализация инструментов миграции
- 4.2 Методика и результаты тестирования
- ЗАКЛЮЧЕНИЕ
- СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- ПРИЛОЖЕНИЕ А. Таблица нововведений стандарта C++11
- ПРИЛОЖЕНИЕ Б. Таблица нововведений стандарта C++14
Статистика использования
Количество обращений: 247
За последние 30 дней: 0 Подробная статистика |