Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Решил создать библиотеку у решения. Поэтому добавил файлы: Mylib.h: Код: plaintext 1. 2. 3. и MyLib.cpp: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Такой код выдает ошибку о неразрешенных внешних элементах (файл MyLib.h добавлен в заголовки с помощью автозаполнения, поэтому 100% виден): Код: plaintext 1. 2. 3. 4. 5. Почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 17:31 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
AlekseySQLПочему? Потому что надо ещё добавить библиотеку в список линковки. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 17:32 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Взлетело когда я перебросил файлы Mylib.h и MyLib.cpp в папку проекта (из предварительно созданной папки решения, с помощью которой я хотел все красиво разложить по разным местам). Не понял тогда зачем были придуманы папки решения, если из них не запускаются файлы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 17:39 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovПотому что надо ещё добавить библиотеку в список линковки. Это как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 17:40 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Слэш пишется \\ Код: plaintext 1. или можно так Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 17:42 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Dima TСлэш пишется \\ Код: plaintext 1. или можно так Код: plaintext 1. Всеми способами пробовал- не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 17:47 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
AlekseySQLВсеми способами пробовал- не работает. Значит С это не твое, учи ЯП попроще. Си язык очень простой, но очень требовательный, все головняки перекладываются на разработчика, если ты не в состоянии эти головняки порешать, то займись чем-то другим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 21:11 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Dima T, вопрос оказался в среде разработке и к С отношения не имел. Спасибо за рекомендацию :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2017, 22:05 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
AlekseySQLDima T, вопрос оказался в среде разработке и к С отношения не имел. Спасибо за рекомендацию :) Вопрос имел непосредственное отношение к языку С, и то, что ты не знаешь, основные принципы его работы, как раз и привело к проблеме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2017, 09:44 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
AlekseySQLDima T, вопрос оказался в среде разработке и к С отношения не имел. Спасибо за рекомендацию :) Без обид, я писал не чтобы загнобить. Судя по твоим постам ты для себя изучаешь, своих целей ты не обозначил, но подозреваю что Си тебе не нужен. Чистый Си это очень много букав в коде и на каждой букве надо быть готовым к выстрелу в ногу. В С нет ограничений, поэтому он самый быстрый и потому же самый трудный. Есть другие ЯП где все попроще, тот же C#. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2017, 20:21 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
[quot Dima T]AlekseySQLDima Есть другие ЯП где все попроще, тот же C#. К сожалению, далеко не все он может. Долгое время работал с VB (начиная с VB6) и С#. И вполне устраивало. А тут незадача - ну не могут они этого.)) Про Алексея не знаю, но я долго и безуспешно пытался прикрутить к своим задачам С#, включая сторонние компиляторы. Оказалось, таки, что проще (и быстрее) на С++. Хотя не особо помню и сильно отстал от поезда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2017, 23:11 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
YUBA К сожалению, далеко не все он может. Долгое время работал с VB (начиная с VB6) и С#. И вполне устраивало. А тут незадача - ну не могут они этого.)) Про Алексея не знаю, но я долго и безуспешно пытался прикрутить к своим задачам С#, включая сторонние компиляторы. Оказалось, таки, что проще (и быстрее) на С++. Хотя не особо помню и сильно отстал от поезда. Проблематично написать DLL на C# и вызывать ее функции из стороннего приложения (не на .Net), но вроде как можно. Тут С/С++ удобнее. На C WinAPI написан, практически все ЯП умеют WinAPI вызывать, по той же схеме легко свое API подсунуть. Но писать законченные приложения на C# гораздо проще, букав меньше, т.к. из коробки есть куча классов на все случаи жизни, с хорошей документацией, в этом плане С/С++ сложнее, т.к. в стандарте С/С++ только самое-самое нужное, для остального надо брать сторонние библиотеки и разбираться с ними, или самому с нуля писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2017, 21:06 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Dima TПроблематично написать DLL на C# и вызывать ее функции из стороннего приложения (не на .Net), но вроде как можно. Тут С/С++ удобнее. На C WinAPI написан, практически все ЯП умеют WinAPI вызывать, по той же схеме легко свое API подсунуть. Но писать законченные приложения на C# гораздо проще, букав меньше, т.к. из коробки есть куча классов на все случаи жизни, с хорошей документацией, в этом плане С/С++ сложнее, т.к. в стандарте С/С++ только самое-самое нужное, для остального надо брать сторонние библиотеки и разбираться с ними, или самому с нуля писать.Здесь вы немного не правы. Нативные экспорт функции из С# сделать несложно: 1. Компиляция С# кода, с послующим его декомпилом, затем правка этого декомпила вручную и последующая повторная компиляция. 2. Прямо из VS C# с GitHub скачивается сторонний компилятор. Перед экспортируемой функцией пишем типа [Export], и компилируем прямо из VS этим сторонним компилятором. Он, в общем, делает примерно тоже, что и п.1, только автоматом. Другое дело внешние сложные С++ типы данных и указатели на них, коллбэк функции и пр. Возможно такое взаимодействие и можно организовать из С#, но проще сделать из С++. Т.к. С++ предполагает совмещение нативного и NET кодов в одном флаконе, я думаю так и сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2017, 22:22 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
YUBAЗдесь вы немного не правы. Нативные экспорт функции из С# сделать несложно: 1. Компиляция С# кода, с послующим его декомпилом, затем правка этого декомпила вручную и последующая повторная компиляция. 2. Прямо из VS C# с GitHub скачивается сторонний компилятор. Перед экспортируемой функцией пишем типа [Export], и компилируем прямо из VS этим сторонним компилятором. Он, в общем, делает примерно тоже, что и п.1, только автоматом. Другое дело внешние сложные С++ типы данных и указатели на них, коллбэк функции и пр. Возможно такое взаимодействие и можно организовать из С#, но проще сделать из С++. Т.к. С++ предполагает совмещение нативного и NET кодов в одном флаконе, я думаю так и сделать. вам, господин yuba, надо сменить не яп а траву, а лучше вобще отказаться от этой привычки :) по мне - если знаешь хорошо плюсы, то быстрее делать на плюсах. изучать их наверное труднее, но если начать сразу с них, то будешь более хорошим специалистом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2017, 22:41 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Dima TСлэш пишется \\ Код: plaintext 1. Здесь необязательно удваивать backslash-и (по крайней мере в MinGW). Dima TНа C WinAPI написан,Wine-овская реализация WinAPI -- да, написана на C . Виндовая реализация WinAPI -- скорее всего тоже, хотя Microsoft не публикует исходники Windows. Слышал, что первые версии Windows (ещё 16-битные) были написаны на Pascal-е, поэтому у WinAPI-шных функций calling convention назывался «pascal», а уже потом переименовали в «stdcall». Dima Tв стандарте С/С++ только самое-самое нужное,И ещё кое-что ненужное, например std::prev_permutation , std::next_permutation , std::valarray . А вот получить stack trace в отладочном build-е стандартным способом -- по-прежнему нельзя. Видимо, считается, что программистам достаточно __FILE__, __LINE__, __func__. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2017, 03:41 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Пётр СедовDima TСлэш пишется \\ Код: plaintext 1. Здесь необязательно удваивать backslash-и (по крайней мере в MinGW). 6.4.7 Header names paragraph 2If the characters ', \, ", //, or /* occur in the sequence between the < and > delimiters, the behavior is undefined. Similarly, if the characters ', \, //, or /* occur in the sequence between the " delimiters, the behavior is undefined. Header name preprocessing tokens are recognized only within #include preprocessing directives and in implementation-defined locations within #pragma directives. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2017, 05:19 |
|
||
|
Неразрешенные внешние элементы при вызове функции другого файла
|
|||
|---|---|---|---|
|
#18+
Очевидно, что проблема была в том, что MyLib.cpp не компилировался, либо библиотека была не подключена к проекту. На начальном этапе не советую использовать самописные библиотеки и заниматься не пойми чем. Также, в VS лучше использовать английский язык, ибо вам же проще будет искать помощь в решении тех или иных трудностей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2017, 08:46 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39388623&tid=2018300]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
168ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 275ms |
| total: | 548ms |

| 0 / 0 |
