Как подключать сторонние библиотеки C/C++ при работе с редакторами кода по типу VS Code?
Нашёл кучу информации о том, как подключать сторонние библиотеки C/C++ к Microsoft VS, но ничего про Visual Studio Code. Редактор сильно отличается, руководств в интернете совсем немного(про сторонние библиотеки вообще ни одного не нашёл), очень хочу поработать в этом редакторе, но никак не могу разобраться, как же подсоединить к проекту внешнюю библиотеку. Желательно показать на примере библиотеки SFML или OpenGL.
Буду крайне благодарен за хоть какой-нибудь ответ!
- Вопрос задан более трёх лет назад
- 2835 просмотров
1 комментарий
Средний 1 комментарий
Как подключать сторонние библиотеки C/C++ в VS Code?
Нашёл кучу информации о том, как подключать сторонние библиотеки C/C++ к Microsoft VS, но ничего про Visual Studio Code. Редактор сильно отличается, руководств в интернете совсем немного(про сторонние библиотеки вообще ни одного не нашёл), очень хочу поработать в этом редакторе, но никак не могу разобраться, как же подсоединить к проекту внешнюю библиотеку. Желательно показать на примере библиотеки SFML или OpenGL. Буду крайне благодарен за хоть какой-нибудь ответ!
Отслеживать
задан 20 авг 2020 в 14:21
lie_is_a_cake lie_is_a_cake
21 1 1 золотой знак 1 1 серебряный знак 3 3 бронзовых знака
Первое что попалось programmersought.com/article/1263524392
20 авг 2020 в 14:35
а какой отношение имеют подключаемые библиотеки к редактору? Используйте например cmake для построения зависимость и не привязывайте себя цепью к редактору
20 авг 2020 в 15:17
VS поставляется со своим компилятором, поэтому для нее и инструкции по подключению библиотек отдельные. VSC сама по себе не связана ни с каким компилятором. Гуглите не про VSC, а про ваш компилятор (скорее всего MinGW GCC), и разберитесь как компилировать код с библиотеками в командной строке. Потом сможете вписать ту же команду в настройки VSC, и все.
Руководство. Создание библиотеки классов .NET с помощью Visual Studio для Mac
Корпорация Майкрософт объявила о прекращении работы Visual Studio для Mac. Visual Studio для Mac больше не будет поддерживаться с 31 августа 2024 г. Ниже представлены возможные альтернативы.
- Visual Studio Code с пакетом разработки C# и связанными расширениями, такими как .NET MAUI и Unity.
- Visual Studio, запущенная в Windows на виртуальной машине Mac.
- Visual Studio, запущенная в Windows на виртуальной машине в облаке.
Дополнительные сведения см. в Visual Studio для Mac объявлении о выходе на пенсию.
В этом учебнике вы создадите библиотеку классов с одним методом для обработки строк.
Библиотека классов определяет типы и методы, которые могут быть вызваны из любого приложения. Если библиотека предназначена для .NET Standard 2.0, она может быть вызвана любой реализацией .NET (включая .NET Framework), которая поддерживает .NET Standard 2.0. Если библиотека предназначена для .NET 5, ее можно вызвать с помощью любого приложения, предназначенного для .NET 5. В этом учебнике показано, как ориентироваться на .NET 5.
Ваш отзыв очень важен. Вы можете отправить отзыв о Visual Studio для Mac команде разработчиков двумя способами.
- В Visual Studio для Mac выберите пункт Справка>Сообщить о проблеме в меню или элемент Сообщить о проблеме на экране приветствия. При этом открывается окно для заполнения отчета об ошибках. Отслеживать свои отзывы можно на портале сообщества разработчиков.
- Чтобы внести предложение, выберите пункт Справка>Отправить предложение в меню или элемент Отправить предложение на экране приветствия. При этом откроется веб-страница сообщества разработчиков Visual Studio для Mac.
Необходимые компоненты
- Установите Visual Studio для Mac 8.8 или более поздней версии. Выберите вариант установки .NET Core. Установка Xamarin является необязательным шагом для разработки в .NET. Дополнительные сведения см. на следующих ресурсах:
- Руководство. Установка Visual Studio для Mac.
- Поддерживаемые версии macOS.
- Версии .NET, поддерживаемые Visual Studio для Mac.
Создание решения с помощью проекта библиотеки классов
Решение Visual Studio служит контейнером для одного или нескольких проектов. Создайте решение и проект библиотеки классов в решении. Позже вы добавите дополнительные связанные проекты в одно решение.
- Запустите Visual Studio для Mac.
- В окне запуска выберите Создать проект.
- В диалоговом окне Выберите шаблон из нового проекта выберите элементы Интернет и консоль>Библиотека>Библиотека классов и нажмите кнопку Далее.

- В диалоговом окне Configure your new Class Library (Настройка новой библиотеки классов) выберите .NET 5.0, а затем нажмите кнопку Далее.
- Присвойте проекту имя StringLibrary, а решению — ClassLibraryProjects. Оставьте флажок Создайте каталог проекта в каталоге решения установленным. Выберите Создать.

- В главном меню выберите Вид>Решение и щелкните значок закрепления, чтобы панель была открытой.

- На панели решения разверните StringLibrary узел, чтобы открыть файл класса, предоставленный шаблоном Class1.cs . Щелкните файл, выберите «Переименовать» в контекстном меню и переименуйте файл в StringLibrary.cs. Откройте файл и замените его содержимое следующим кодом:
using System; namespace UtilityLibraries < public static class StringLibrary < public static bool StartsWithUpper(this string str) < if (string.IsNullOrWhiteSpace(str)) return false; char ch = str[0]; return char.IsUpper(ch); >> > - Нажмите ⌘ S ( Command + S ), чтобы сохранить файл.
- Выберите Ошибки в нижней части окна интегрированной среды разработки, чтобы открыть панель Ошибки. Нажмите кнопку Выходные данные сборки.

- Выберите в меню Сборка>Собрать все. Выполняется сборка решения. На панели выходных данных отображается сообщение об успешной сборке.

- На панели Решение щелкните решение ClassLibraryProjects при нажатой клавише CTRL . Добавьте новый проект Консольное приложение, выбрав шаблон в области Web and Console (Интернет и консоль)>Приложение, а затем нажмите кнопку Далее.
- Выберите .NET 5.0 в качестве целевой платформы, а затем нажмите кнопку Далее.
- Назовите проект ShowCase. Выберите Создать, чтобы создать проект в решении.
- Откройте файл Program.cs. Замените код следующим кодом:
Добавление консольного приложения в решение
Добавьте консольное приложение, использующее библиотеку классов. В приложении пользователю будет предложено ввести строку и сообщить, начинается ли строка с символа верхнего регистра.

using System; using UtilityLibraries; class Program < static void Main(string[] args) < int row = 0; do < if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) break; Console.WriteLine($"Input: : " + $"<(input.StartsWithUpper() ? "Yes" : "No")>"); row += 3; > while (true); return; // Declare a ResetConsole local method void ResetConsole() < if (row >0) < Console.WriteLine("Press any key to continue. "); Console.ReadKey(); >Console.Clear(); Console.WriteLine($"Press only to exit; otherwise, enter a string and press :"); row = 3; > > >
Добавление ссылки на проект
Изначально новый проект консольного приложения не имеет доступа к библиотеке классов. Чтобы позволить приложению вызывать методы из библиотеки классов, создайте в проекте ссылку на проект библиотеки классов.
- На панели Решения, удерживая нажатой клавишу CTRL , щелкните узел Зависимости нового проекта ShowCase. В контекстном меню выберите пункт Добавить ссылку.
- В диалоговом окне Ссылки выберите проект StringLibrary и нажмите кнопку OK.
Выполнить приложение

- Удерживая нажатой клавишу CTRL , щелкните проект ShowCase и выберите Запустить проект в контекстном меню.
- Проверьте, как работает программа: вводите строки и нажимайте клавишу ВВОД . Чтобы выйти, просто нажмите клавишу ВВОД .
Дополнительные ресурсы
- Разработка библиотек с помощью .NET CLI
- Заметки о выпуске Visual Studio 2019 для Mac
- Список версий .NET Standard и поддерживаемых ими платформ
Следующие шаги
В этом учебнике вы создали решение и проект библиотеки, а также добавили проект консольного приложения, использующего эту библиотеку. В следующем руководстве вы добавите в решение проект модульного теста.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Создание статической библиотеки (VS)

В этой инструкции описан процесс создания и подключения собственных библиотек в Visual Studio 2019/2017.
Сборка библиотеки
- Создайте проект Visual Studio с типом Статическая библиотека (находится в разделе Visual C++ — Классические приложения).
- Добавьте в ваш проект заголовочные файлы и файлы с реализацией классов и функций, которые нужно собрать в библиотеку. Например, создадим файлы TestClass.h и TestClass.cpp:
#ifndef _TESTCLASS_H_ #define _TESTCLASS_H_ #include class TestClass < public: int echo(int); void helloWorld(); >; #endif // !_TESTCLASS_H_
#include "TestClass.h" int TestClass::echo(int number) < return number; >void TestClass::helloWorld()
- [по умолчанию]/Debug , если вы выбрали платформу сборки x86 (Win32) и конфигурацию Debug
- /Release , если вы выбрали платформу сборки x86 (Win32) и конфигурацию Release
- /x64/Debug , если вы выбрали платформу сборки x64 и конфигурацию Debug
- /x64/Release , если вы выбрали платформу сборки x64 и конфигурацию Release
- // , если у вас настроена нестандартная конфигурация сборки
Подключение библиотеки в проект
- Добавьте в файлы проекта собранную библиотеку lib.
- Подключите заголовочные файлы библиотеки в коде вашего проекта (или скопируйте их и добавьте в файлы проекта). Если проект с библиотекой и проект с использующим ее приложением находятся в одном решении, то заголовки библиотеки находятся в каталоге уровнем выше: ../ . Например:
#include #include "../MyLib/TestClass.h" int main()
Другой вариант: вы можете перейти в настройки проекта, раздел Каталоги VC++, и добавить в дополнительные каталоги подключаемых файлов в начало путь к папке с проектом библиотеки (не забудьте поставить точку с запятой в конце), например: C:/Projects/MySolution/MyLib; (если проект с библиотекой и проект с использующим ее приложением находятся в одном решении, то заголовки библиотеки находятся в каталоге уровнем выше: ../MyLib; ). После этого вы сможете подключать заголовочные файлы без указания пути к каталогам:
#include #include "TestClass.h" int main()
Не забудьте, что после внесения изменений в код файлов библиотеки ее необходимо собирать заново, чтобы она исправно функционировала в использующих ее приложениях. Для этого в обозревателе решений щелкните правой кнопкой мыши по названию проекта с библиотекой и выберите Пересобрать.
maksbotan / readme.md
Наш курс включает в себя решения задач на практических занятиях, а также домашние задания. Для этого вам понадобится ноутбук с Python.
Если у вас уже установлен Python и вы уверены, что умеете им пользоваться, переходите сразу к разделам «Установка нужных библиотек» и «Дополнительные материалы».
Если у вас Mac — попробуйте адаптировать эту инструкцию для себя или обратитесь за помощью к организаторам курса. Если же у вас Linux, то вы скорее всего сами всё знаете. Если что-то всё же не получается, попросите помощи в нашем чате.
Мы будем пользоваться Python 3.8. Скачать его можно по этой ссылке. Запустите скачанный файл для установки.
Рекомендуем на первом экране нажать «Customize installation»:
и на следующем выбрать «Install for all users» и «Add Python to environment variables»:
Теоретически, код на Python можно писать в любом текстовом редакторе, включая Блокнот. Однако решать задачу будет гораздо удобнее если установить специально для этого предназначенный.
Мы рекомендуем пользоваться Visual Studio Code. Скачать можно здесь.
Настройка VS Code
Нам понадобится установить расширение VS Code, включающее поддержку Python. Для этого нажмите нижнюю кнопку в левой панели (состоит из 4 квадратиков), введите в строке поиска «Python», выберите первое расширение (как на картинке ниже) и нажмите зеленую кнопку Install.

Создайте новый файл («File» -> «New File») и сохраните его с расширением .py , например hello.py .
Если всё установлено правильно, в левом нижнем углу вы увидите надпись «Python 3.8.7 64-bit». Это значит, что VS Code «увидел» Python, который вы установили.
Запуск ваших программ
Напишите в этом новом файле такой код:
print("Hello, world!")
Теперь нажмите в любом месте правой кнопкой мыши и выберите пункт «Run Python File in Terminal». Внизу экрана вы увидите окно Terminal, в котором будет напечатана строка » Hello, world! «.
Установка нужных библиотек
В наших заданиях нам понадобятся библиотеки numpy и biopython . Самый простой способ их установить — перейти в окно Terminal в VS Code и набрать там команду
pip3 install --user numpy biopython
Если эта команда не выведет никаких ошибок (красным текстом), значит вы готовы к нашему курсу!
Если вы ещё никогда не писали на Python или просто не уверены в своих знаниях, рекомендуем несколько хороших материалов.
- Самоучитель Python, в котором можно делать упражнения прямо в окна браузера: https://pythontutor.ru
- Небольшая книга-самоучитель по языку: https://pythonworld.ru/samouchitel-python
- И бесплатный видео курс по Python от Института Биоинформатики: https://stepik.org/course/67/promo
Настройка рабочей среды
Установка VS Code не представляет сложностей. Достаточно скачать установочный файл со страницы загрузок и запустить его.
Теперь настроим VS Code для удобной работы с языками C++ и Python.
Расширения VS Code
Установите следующие расширения VS Code:
Выбор интерпретатора python
При начале работы с кодом python (файлом с расширением .py ) VS Code предложит выбрать интерпретатор python, который будет использоваться для подсветки кода, проверки синтаксиса и вывода подсказок:

Можете, например, выбрать интерпретатор из недавно созданного окружения nsu.
Создадим файл test.py , содержащий одну строку:
print('Hello, world!')
Исполнить этот скрипт можно, открыв консоль в VS Code с помощью сочетания клавиш Ctrl+J и набрав в ней
python test.py
В правом верхнем углу окна находится кнопка с зеленым треугольником ▷, нажатие на которую приводит к тому же результату:

Настройка работы с GCC
Создайте файл test.cpp , содержащий следующий код:
#include int main() std::cout <"Hello, world!" <std::endl; return 0; >
Скомпилируем его с помощью компилятора GCC и командной строки. Откройте консоль в VS Code ( Ctrl+J ) и исполните команду
> g++ test.cpp
Компилятор создал исполняемый файл a.exe . Запустите его:
> .\a.exe Hello, world!
Работает. Настроим теперь VS Code для автоматизации этого действия. Выберите в меню пункт Terminal -> Configure Default Build Task. :

Выберите из выпавшего списка пункт g++.exe . В результате будет сгенерирован файл .vscode/tasks.json подобный такому:
"version": "2.0.0", "tasks": [ "type": "shell", "label": "C/C++: cpp.exe build active file", "command": "D:\\mingw\\mingw32\\bin\\g++.exe", "args": [ "-g", "$", "-o", "$\\$.exe" ], "options": "cwd": "$" >, "problemMatcher": [ "$gcc" ], "group": "kind": "build", "isDefault": true > > ] >
Теперь при нажатии клавиш Ctrl+Shift+B или выборе пункта меню Terminal -> Run Build Task будет выполняться компиляция открытого файла. Для файла test.cpp будет создан исполняемый файл test.exe .
Работа с CMake
Откройте новую рабочую директорию VS Code, создайте в ней файл main.cpp , содержащий следующий код:
#include int main() std::cout <"Hello, world!" <std::endl; return 0; >
и файл CMakeLists.txt со следующим содержанием:
cmake_minimum_required(VERSION 3.0.0) add_executable(test main.cpp)
Эти два файла составляют минимальный CMake-проект. Выполним сначала сборку CMake-проекта через консоль: создайте в рабочей директории поддиректорию build , в которой будет осуществляться сборка, и перейдите в неё:
> mkdir build; cd build
Выполните настройку проекта и запустите сборку:
> cmake -G "MinGW Makefiles" .. > cmake --build .
В первой команде мы указали, что сборка будет осуществляться с помощью MinGW и что файлы проекта расположены в родительской директории (путь .. ). Вторая команда осуществляет сборку в текущей директории (путь . ). В директории build должен появиться исполняемый файл test.exe .
Расширение VS Code для работы с CMake позволяет автоматизировать сборку проекта. Выберите рабочую директорию VS Code (комбинация клавиш Ctrl+K+O ), содержащую файлы main.cpp и CMakeLists.txt . Наберите комбинацию клавиш Ctrl+Shift+P и в строке сверху наберите команду >CMake: Configure . Это запустит настройку инструментов CMake. После завершения настройки в нижней части окна появятся инструменты управления сборкой:

Кнопку «Сборка» запускает сборку, а кнопка ▷ — исполняемый файл.
Если автоматическая настройка CMake привела к ошибке, то, вероятно, инициализация CMake выполнилась без параметра -G «MinGW Makefiles» . В этом случае выполните эту команду в консоли, как показано выше. Достаточно выполнить это действие один раз, после чего конфигурация этого и других проектов будет выполняться верно.
Работа с git
Покажем как можно работать с git-репозиторием через VS Code. Выполните fork репозитория задания Hello, Classroom на GitHub:

Это действие создает новый репозиторий в Вашем аккаунте. Разрешите автоматическое тестирование решения, нажав на большую зеленую кнопку во вкладке Actions:

Новый репозиторий необходимо клонировать на Вашу локальную систему. Удобнее всего это делать с помощью протокола ssh. Для этого сначала необходимо включить OpenSSH Client, который по умолчанию выключен.
Взаимодействие с GitHub репозиторием будет происходить по протоколу ssh с помощью техники шифрования с открытым ключом. Создать пару из приватного и публичного ключа можно в консоли:
>ssh-keygen Generating public/private rsa key pair.
По умолчанию сгенерированные ключи будут расположены в директории ~\.ssh . Файл с публичным ключом называется id-rsa.pub . Публичный ключ нужно добавить на GitHub. Для этого откройте раздел SSH and GPG keys в меню Settings и нажмите на кнопку New SSH key :

Заполните открывшуюся форму. В поле Key нужно скопировать содержимое файла id-rsa.pub . Проследите, чтобы при копировании не появились лишние переносы строк. Весь ключ должен быть расположен в одной строке.
Теперь мы готовы к клонированию репозитория. Выберите на компьютере директорию, в которой Вы будете работать с заданиями курса и перейдите в неё. Откройте страницу репозитория hello-classroom в Вашем аккаунте GitHub и скопируйте строку для клонирования через ssh:

Выполните в консоли команду git clone :
> git clone git@github.com:fakestud/hello-classroom.git Cloning into 'hello-classroom'. remote: Enumerating objects: 15, done. remote: Counting objects: 100% (15/15), done. remote: Compressing objects: 100% (8/8), done. remote: Total 15 (delta 0), reused 15 (delta 0), pack-reused 0 Receiving objects: 100% (15/15), done
Строка git@github.com:fakestud/hello-classroom.git есть скопированная выше строка. Репозиторий был клонирован в директорию hello-classroom . Выберите её в качестве рабочей директории VS Code. Прочитайте файл README.md , содержащий инструкции по решению задания. После решения задания выполните локальную проверку:
> conda activate nsu > pip install -r .\requirements.txt > g++ -std=c++17 main.cpp -o a.out > test_cmd tests/ .\a.out Running 1 tests on 4 CPUs. test1 Command: .\a.out Success All 1 tests passed.
Тесты пройдены успешны. Значит, мы готовы к синхронизации репозитория GitHub с нашей локальной версией. В командной строке для этого достаточно выполнить следующие команды:
git add main.cpp git commit -m "Task solved" git push -u origin master
Редактор VS Code позволяет выполнить эти действия через графический интерфейс. VS Code отслеживает изменения локальной версии репозитория. Откройте вкладку контроля версий слева и посмотрите на список изменившихся файлов. В нашем случае это должен быть только файл main.cpp . Выполните команду git add , нажав на кнопку +:

Затем команду git commit , нажав на кнопку ✓ и введя комментарий в текстовом поле:

Наконец, выполните команду git push :

Источники
- First-Time Git Setup
- VS Code: User and Workspace Settings
- VS Code: Using GCC with MinGW
- VS Code: Get started with CMake Tools on Linux
- Git in Visual Studio Code
- Must-have плагины и несколько полезностей для С\С++ разработки в VS Code
- Памятка пользователям ssh
- Введение
- Настройка рабочей среды
- Установка и настройка VS Code
- Что такое Git?
- Установка Git for Windows
- Установка компилятора
- Установка CMake
- Установка Miniconda3
- Установка библиотеки GoogleTest
- Как отправлять решение задач
Как подключать сторонние библиотеки C/C++ в VS Code?
Нашёл кучу информации о том, как подключать сторонние библиотеки C/C++ к Microsoft VS, но ничего про Visual Studio Code. Редактор сильно отличается, руководств в интернете совсем немного(про сторонние библиотеки вообще ни одного не нашёл), очень хочу поработать в этом редакторе, но никак не могу разобраться, как же подсоединить к проекту внешнюю библиотеку. Желательно показать на примере библиотеки SFML или OpenGL. Буду крайне благодарен за хоть какой-нибудь ответ!
Отслеживать
задан 20 авг 2020 в 14:21
lie_is_a_cake lie_is_a_cake
21 1 1 золотой знак 1 1 серебряный знак 3 3 бронзовых знака
Первое что попалось programmersought.com/article/1263524392
20 авг 2020 в 14:35а какой отношение имеют подключаемые библиотеки к редактору? Используйте например cmake для построения зависимость и не привязывайте себя цепью к редактору
20 авг 2020 в 15:17
VS поставляется со своим компилятором, поэтому для нее и инструкции по подключению библиотек отдельные. VSC сама по себе не связана ни с каким компилятором. Гуглите не про VSC, а про ваш компилятор (скорее всего MinGW GCC), и разберитесь как компилировать код с библиотеками в командной строке. Потом сможете вписать ту же команду в настройки VSC, и все.
Руководство. Создание библиотеки классов .NET с помощью Visual Studio Code
В этом руководстве вы создадите простую служебную библиотеку с одним методом для обработки строк.
Библиотека классов определяет типы и методы, которые могут быть вызваны из любого приложения. Если библиотека предназначена для .NET Standard 2.0, она может быть вызвана любой реализацией .NET (включая .NET Framework), которая поддерживает .NET Standard 2.0. Если библиотека предназначена для .NET 8, она может вызываться любым приложением, предназначенным для .NET 8. В этом руководстве показано, как использовать .NET 8.
После создания библиотеки классов ее можно распространить как независимый компонент или включить в состав одного или нескольких пакетов приложения.
Необходимые компоненты
- Установленная платформа Visual Studio Code с расширением C#. Если у вас установлено расширение комплекта разработки на C#, удалите или отключите его. Он не используется в этой серии учебников. См. сведения об установке расширений Visual Studio Code из Marketplace.
- Пакет SDK для .NET 8.
Создание решения
Начните с создания пустого решения для размещения проекта библиотеки классов. Решение служит контейнером для одного или нескольких проектов. Вы будете добавлять дополнительные связанные проекты в одно решение.
- Запустите Visual Studio Code.
- В главном меню выберите Файл>Открыть папку (в macOS щелкните Открыть. ).
- В диалоговом окне Открыть папку создайте папку ClassLibraryProjects и щелкните Выбор папки (в macOS щелкните Открыть).
- Откройте терминал в Visual Studio Code, выбрав в основном меню пункт Вид>Терминал. Откроется окно Терминал с командной строкой в папке ClassLibraryProjects.
- В окне терминала введите следующую команду:
dotnet new slnВыходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Solution File" was created successfully.Создание проекта библиотеки классов
Добавьте в решение новый проект библиотеки классов .NET с именем «StringLibrary».
-
В терминале выполните следующую команду, чтобы создать проект библиотеки классов:
dotnet new classlib -o StringLibraryКоманда -o или —output задает расположение для размещения созданных выходных данных. Выходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Class library" was created successfully. Processing post-creation actions. Running 'dotnet restore' on StringLibrary\StringLibrary.csproj. Determining projects to restore. Restored C:\Projects\ClassLibraryProjects\StringLibrary\StringLibrary.csproj (in 328 ms). Restore succeeded.dotnet sln add StringLibrary/StringLibrary.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Project `StringLibrary\StringLibrary.csproj` added to the solution.net8.0 namespace UtilityLibraries; public static class StringLibrary < public static bool StartsWithUpper(this string? str) < if (string.IsNullOrWhiteSpace(str)) return false; char ch = str[0]; return char.IsUpper(ch); >>dotnet buildВыходные данные в терминале выглядят примерно так, как в следующем примере:
Microsoft (R) Build Engine version 17.8.0+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore. All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net8.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78Добавление консольного приложения в решение
Добавьте консольное приложение, использующее библиотеку классов. В приложении пользователю будет предложено ввести строку и сообщить, начинается ли строка с символа верхнего регистра.
-
В терминале выполните следующую команду, чтобы создать проект консольного приложения:
dotnet new console -o ShowCaseВыходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Console Application" was created successfully. Processing post-creation actions. Running 'dotnet restore' on ShowCase\ShowCase.csproj. Determining projects to restore. Restored C:\Projects\ClassLibraryProjects\ShowCase\ShowCase.csproj (in 210 ms). Restore succeeded.dotnet sln add ShowCase/ShowCase.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Project `ShowCase\ShowCase.csproj` added to the solution.using UtilityLibraries; class Program < static void Main(string[] args) < int row = 0; do < if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) break; Console.WriteLine($"Input: "); Console.WriteLine("Begins with uppercase? " + $"<(input.StartsWithUpper() ? "Yes" : "No")>"); Console.WriteLine(); row += 4; > while (true); return; // Declare a ResetConsole local method void ResetConsole() < if (row >0) < Console.WriteLine("Press any key to continue. "); Console.ReadKey(); >Console.Clear(); Console.WriteLine($"Press only to exit; otherwise, enter a string and press :"); row = 3; > > >Добавление ссылки на проект
Изначально новый проект консольного приложения не имеет доступа к библиотеке классов. Чтобы позволить приложению вызывать методы из библиотеки классов, создайте в проекте ссылку на проект библиотеки классов.
-
Выполните следующую команду:
dotnet add ShowCase/ShowCase.csproj reference StringLibrary/StringLibrary.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Reference `..\StringLibrary\StringLibrary.csproj` added to the project.Выполнить приложение
- В терминале выполните следующую команду:
dotnet run --project ShowCase/ShowCase.csprojPress only to exit; otherwise, enter a string and press : A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : NoДополнительные ресурсы
- Разработка библиотек с помощью .NET CLI
- Список версий .NET Standard и поддерживаемых ими платформ
Следующие шаги
В этом руководстве вы создали решение, добавили проект библиотеки и добавили проект консольного приложения, использующего библиотеку. В следующем руководстве вы добавите в решение проект модульного теста.
В этом руководстве вы создадите простую служебную библиотеку с одним методом для обработки строк.
Библиотека классов определяет типы и методы, которые могут быть вызваны из любого приложения. Если библиотека предназначена для .NET Standard 2.0, она может быть вызвана любой реализацией .NET (включая .NET Framework), которая поддерживает .NET Standard 2.0. Если библиотека предназначена для .NET 7, ее можно вызвать любым приложением, предназначенным для .NET 7. В этом руководстве показано, как нацелиться на .NET 7.
После создания библиотеки классов ее можно распространить как независимый компонент или включить в состав одного или нескольких пакетов приложения.
Необходимые компоненты
- Установленная платформа Visual Studio Code с расширением C#. См. сведения об установке расширений Visual Studio Code из Marketplace.
- Пакет SDK для .NET 7.
Создание решения
Начните с создания пустого решения для размещения проекта библиотеки классов. Решение служит контейнером для одного или нескольких проектов. Вы будете добавлять дополнительные связанные проекты в одно решение.
- Запустите Visual Studio Code.
- В главном меню выберите Файл>Открыть папку (в macOS щелкните Открыть. ).
- В диалоговом окне Открыть папку создайте папку ClassLibraryProjects и щелкните Выбор папки (в macOS щелкните Открыть).
- Откройте терминал в Visual Studio Code, выбрав в основном меню пункт Вид>Терминал. Откроется окно Терминал с командной строкой в папке ClassLibraryProjects.
- В окне терминала введите следующую команду:
dotnet new slnВыходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Solution File" was created successfully.Создание проекта библиотеки классов
Добавьте в решение новый проект библиотеки классов .NET с именем «StringLibrary».
-
В терминале выполните следующую команду, чтобы создать проект библиотеки классов:
dotnet new classlib -o StringLibraryКоманда -o или —output задает расположение для размещения созданных выходных данных. Выходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Class library" was created successfully. Processing post-creation actions. Running 'dotnet restore' on StringLibrary\StringLibrary.csproj. Determining projects to restore. Restored C:\Projects\ClassLibraryProjects\StringLibrary\StringLibrary.csproj (in 328 ms). Restore succeeded.dotnet sln add StringLibrary/StringLibrary.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Project `StringLibrary\StringLibrary.csproj` added to the solution.net7.0 namespace UtilityLibraries; public static class StringLibrary < public static bool StartsWithUpper(this string? str) < if (string.IsNullOrWhiteSpace(str)) return false; char ch = str[0]; return char.IsUpper(ch); >>dotnet buildВыходные данные в терминале выглядят примерно так, как в следующем примере:
Microsoft (R) Build Engine version 16.7.4+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore. All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net7.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78Добавление консольного приложения в решение
Добавьте консольное приложение, использующее библиотеку классов. В приложении пользователю будет предложено ввести строку и сообщить, начинается ли строка с символа верхнего регистра.
-
В терминале выполните следующую команду, чтобы создать проект консольного приложения:
dotnet new console -o ShowCaseВыходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Console Application" was created successfully. Processing post-creation actions. Running 'dotnet restore' on ShowCase\ShowCase.csproj. Determining projects to restore. Restored C:\Projects\ClassLibraryProjects\ShowCase\ShowCase.csproj (in 210 ms). Restore succeeded.dotnet sln add ShowCase/ShowCase.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Project `ShowCase\ShowCase.csproj` added to the solution.using UtilityLibraries; class Program < static void Main(string[] args) < int row = 0; do < if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) break; Console.WriteLine($"Input: "); Console.WriteLine("Begins with uppercase? " + $"<(input.StartsWithUpper() ? "Yes" : "No")>"); Console.WriteLine(); row += 4; > while (true); return; // Declare a ResetConsole local method void ResetConsole() < if (row >0) < Console.WriteLine("Press any key to continue. "); Console.ReadKey(); >Console.Clear(); Console.WriteLine($"Press only to exit; otherwise, enter a string and press :"); row = 3; > > >Добавление ссылки на проект
Изначально новый проект консольного приложения не имеет доступа к библиотеке классов. Чтобы позволить приложению вызывать методы из библиотеки классов, создайте в проекте ссылку на проект библиотеки классов.
-
Выполните следующую команду:
dotnet add ShowCase/ShowCase.csproj reference StringLibrary/StringLibrary.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Reference `..\StringLibrary\StringLibrary.csproj` added to the project.Выполнить приложение
- В терминале выполните следующую команду:
dotnet run --project ShowCase/ShowCase.csprojPress only to exit; otherwise, enter a string and press : A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : NoДополнительные ресурсы
- Разработка библиотек с помощью .NET CLI
- Список версий .NET Standard и поддерживаемых ими платформ
Следующие шаги
В этом руководстве вы создали решение, добавили проект библиотеки и добавили проект консольного приложения, использующего библиотеку. В следующем руководстве вы добавите в решение проект модульного теста.
В этом руководстве вы создадите простую служебную библиотеку с одним методом для обработки строк.
Библиотека классов определяет типы и методы, которые могут быть вызваны из любого приложения. Если библиотека предназначена для .NET Standard 2.0, она может быть вызвана любой реализацией .NET (включая .NET Framework), которая поддерживает .NET Standard 2.0. Если библиотека предназначена для .NET 6, ее можно вызвать с помощью любого приложения, предназначенного для .NET 6. В этом руководстве показано, как выполнить нацеливание на .NET 6.
После создания библиотеки классов ее можно распространить как независимый компонент или включить в состав одного или нескольких пакетов приложения.
Необходимые компоненты
- Установленная платформа Visual Studio Code с расширением C#. См. сведения об установке расширений Visual Studio Code из Marketplace.
- Пакет SDK для .NET 6.
Создание решения
Начните с создания пустого решения для размещения проекта библиотеки классов. Решение служит контейнером для одного или нескольких проектов. Вы будете добавлять дополнительные связанные проекты в одно решение.
- Запустите Visual Studio Code.
- В главном меню выберите Файл>Открыть папку (в macOS щелкните Открыть. ).
- В диалоговом окне Открыть папку создайте папку ClassLibraryProjects и щелкните Выбор папки (в macOS щелкните Открыть).
- Откройте терминал в Visual Studio Code, выбрав в основном меню пункт Вид>Терминал. Откроется окно Терминал с командной строкой в папке ClassLibraryProjects.
- В окне терминала введите следующую команду:
dotnet new slnВыходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Solution File" was created successfully.Создание проекта библиотеки классов
Добавьте в решение новый проект библиотеки классов .NET с именем «StringLibrary».
-
В терминале выполните следующую команду, чтобы создать проект библиотеки классов:
dotnet new classlib -f net6.0 -o StringLibrary—framework Или -f команда изменяет целевую платформу по умолчанию на net6.0 версию. Команда -o или —output задает расположение для размещения созданных выходных данных. Выходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Class library" was created successfully. Processing post-creation actions. Running 'dotnet restore' on StringLibrary\StringLibrary.csproj. Determining projects to restore. Restored C:\Projects\ClassLibraryProjects\StringLibrary\StringLibrary.csproj (in 328 ms). Restore succeeded.dotnet sln add StringLibrary/StringLibrary.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Project `StringLibrary\StringLibrary.csproj` added to the solution.net6.0 namespace UtilityLibraries; public static class StringLibrary < public static bool StartsWithUpper(this string? str) < if (string.IsNullOrWhiteSpace(str)) return false; char ch = str[0]; return char.IsUpper(ch); >>dotnet buildВыходные данные в терминале выглядят примерно так, как в следующем примере:
Microsoft (R) Build Engine version 16.7.0+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore. All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net6.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78Добавление консольного приложения в решение
Добавьте консольное приложение, использующее библиотеку классов. В приложении пользователю будет предложено ввести строку и сообщить, начинается ли строка с символа верхнего регистра.
-
В терминале выполните следующую команду, чтобы создать проект консольного приложения:
dotnet new console -f net6.0 -o ShowCaseВыходные данные в терминале выглядят примерно так, как в следующем примере:
The template "Console Application" was created successfully. Processing post-creation actions. Running 'dotnet restore' on ShowCase\ShowCase.csproj. Determining projects to restore. Restored C:\Projects\ClassLibraryProjects\ShowCase\ShowCase.csproj (in 210 ms). Restore succeeded.dotnet sln add ShowCase/ShowCase.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Project `ShowCase\ShowCase.csproj` added to the solution.using UtilityLibraries; class Program < static void Main(string[] args) < int row = 0; do < if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) break; Console.WriteLine($"Input: "); Console.WriteLine("Begins with uppercase? " + $"<(input.StartsWithUpper() ? "Yes" : "No")>"); Console.WriteLine(); row += 4; > while (true); return; // Declare a ResetConsole local method void ResetConsole() < if (row >0) < Console.WriteLine("Press any key to continue. "); Console.ReadKey(); >Console.Clear(); Console.WriteLine($"Press only to exit; otherwise, enter a string and press :"); row = 3; > > >Добавление ссылки на проект
Изначально новый проект консольного приложения не имеет доступа к библиотеке классов. Чтобы позволить приложению вызывать методы из библиотеки классов, создайте в проекте ссылку на проект библиотеки классов.
-
Выполните следующую команду:
dotnet add ShowCase/ShowCase.csproj reference StringLibrary/StringLibrary.csprojВыходные данные в терминале выглядят примерно так, как в следующем примере:
Reference `..\StringLibrary\StringLibrary.csproj` added to the project.Выполнить приложение
- В терминале выполните следующую команду:
dotnet run --project ShowCase/ShowCase.csprojPress only to exit; otherwise, enter a string and press : A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : NoДополнительные ресурсы
- Разработка библиотек с помощью .NET CLI
- Список версий .NET Standard и поддерживаемых ими платформ
Следующие шаги
В этом руководстве вы создали решение, добавили проект библиотеки и добавили проект консольного приложения, использующего библиотеку. В следующем руководстве вы добавите в решение проект модульного теста.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.