草庐IT

single-version-externally-managed

全部标签

c++ - LNK2019 : Unresolved external symbol

我见过很多其他类似的问题,但在他们的帮助下我无法解决这个问题。我知道这是一个链接问题,但据我所知,我已经理清了链接问题。我正在编写一个聊天服务器/客户端(在thisarticle的帮助下)。我已经定义了一个类来保存服务器函数,并有一个处理所有包含的头文件。这是头文件:#include#include#include#include#include#include"resource1.h"classChatServer{public:intInitServer(HINSTANCEhInst);public:voidReportError(interrorCode,constchar*wh

c++ - 错误 LNK2001 : unresolved external symbol __imp__PathRemoveFileSpecA@4

我正在用我的备份程序用vc6.0编程。我包含了shlwapi.h、windows.h并且我使用了PathStripPath函数和PathRemoveFileSpec函数。当我遵守时,这条消息就出来了。BlackDlg.obj:errorLNK2001:unresolvedexternalsymbol__imp__PathStripPathA@4BlackDlg.obj:errorLNK2001:unresolvedexternalsymbol__imp__PathRemoveFileSpecA@4然后我删除了我的代码中的用法,这条消息就不会出现了。感谢您的快速推进。

C++ 单例尝试 : unresolved external symbol

这个问题在这里已经有了答案:C++unresolvedexternalsymbol(4个答案)关闭9年前。我是一名尝试做C++事情的C#开发人员,但我无法理解这里的问题:namespacemyNamespace{classApplication{private:Application(void);~Application(void);//NotcopyableApplication(constApplication&);Application&operator=(constApplication&);staticApplication_instance;[...]public:stat

c++ - LNK1117 : Syntax error in option "VERSION:1.0.0"

这个问题在这里已经有了答案:DEFfilesyntaxerrorinvisualstudio2012(2个答案)关闭8年前。当我尝试使用VisualStudio2013进行构建时,我遇到了一个非常奇怪的问题。谁能帮帮我?我做错了什么?原始消息(德语)1>------Erstellengestartet:Projekt:npworpg,Konfiguration:DebugWin32------1>LINK:fatalerrorLNK1117:SyntaxfehlerinOption"VERSION:1.0.0".==========Erstellen:0erfolgreich,1feh

c++ - 与 extern "C"的 C 和 C++ 链接

我在.h文件中定义了一个C++函数,如下所示,并在.cpp文件中实现:extern"C"voidfunc(boolfirst,floatmin,float*state[6],float*err[6][6]){//usesvectorsandclassesandotherC++constructs}如何在C文件中调用func?如何设置我的文件架构/makefile来编译它?谢谢! 最佳答案 您以正常方式从C调用该函数。但是,您需要包装extern"C"在预处理器宏中以防止C编译器看到它:#ifndef__cplusplusextern

c++ - C的 "extern"是怎么工作的?

我有一个C/C++程序,它是Firefox的插件。因为它是一个插件,所以它有非主入口点。这些入口点需要在C中编译,否则它们的名称会被破坏。但是,其他函数会过载,因此它们需要是C++。解决方案是外部“C”。我已经想通了。但是,如果我在.c文件周围使用extern“C”,我会收到链接错误,因为C++文件的名称被破坏了,但.c文件中的调用却没有。至少我认为这就是正在发生的事情。解决方案似乎是将extern"C"放在.h文件周围。这似乎意味着在.h文件中声明的函数的名称没有被破坏,即使它们是在(可能被破坏的).c文件中定义的。但是,我不明白为什么这会起作用。这是拼团吗?我是否为以后很难发现的错

c++ - 我可以制作函数 `extern "c"` 吗?

我有一些cpp文件,我想使用FFI将它们与LuaJit结合。但问题是,我必须为几乎每个函数添加extern"c"符号,以便FFI可以访问它们。是否有更简单的方法来完成此操作? 最佳答案 多个函数可以放在一个extern"C"block中。这允许您为每个头文件只键入一次extern"C"。extern"C"{voidfunction1();voidfunction2();} 关于c++-我可以制作函数`extern"c"`吗?,我们在StackOverflow上找到一个类似的问题:

c++ - std::notify_one() 中的 "a single total order"是什么意思?

我已阅读Concurrency:AtomicandvolatileinC++11memorymodel和Howstd::memory_order_seq_cstworks,它没有多大帮助,直接回答我的问题。来自https://en.cppreference.com/w/cpp/thread/condition_variable/notify_one:Theeffectsofnotify_one()/notify_all()andeachofthethreeatomicpartsofwait()/wait_for()/wait_until()(unlock+wait,wakeup,and

c++ - MSVC6 如何处理来自 extern "C"函数的异常?

我正在开发一个用VisualStudio6(我知道,FML)编写的应用程序,它使用LoadLibrary和GetProcAddress调用DLL中的函数。较新的代码无法在VC6中编译,需要较新的编译器。DLL有几个构造C++对象的函数,然后VC6程序通过一个抽象类来使用这个对象。这通常工作得很好,但是当GetProcAddress检索到的函数抛出异常时它会遇到问题——即使异常是在DLL中捕获的。我注意到当抽象类的方法抛出异常时不会发生这种情况。在那种情况下一切正常。我在这里做错了什么?如何让VC6生成代码来正确处理异常?编辑:这是一个导致程序崩溃的函数示例:extern"C"__dec

c++ - 弹性/Bison : Bad token management?

我的词法分析器和解析器有问题。首先,在我的词法分析器中有这样一行:"if"beginScope(stOTHER);returnIF;在我的解析器中:stmt:IF'('exp')'stmts...stmts:stmt|'{'stmt_list'}'|'{''}'在这样的代码中:if(sth){dosth;}if(other){doothersth;}beginScope将被调用两次,因为(我认为)Bison不知道if语句的结尾在哪里,所以当它找到IF标记时,他将其视为if语句的结尾,并再次读取它以开始另一个if语句...请帮帮我... 最佳答案