草庐IT

c# - 如何使用 C++ 静态库编译 C# 应用程序?

我把我的C++动态链接库变成了静态库只是为了获取更多的知识。我的问题是如何使用.obj文件通过C#express/MSVisualStudio编译这两个项目? 最佳答案 不,您不能直接从C#访问静态库。您必须使用DLL。 关于c#-如何使用C++静态库编译C#应用程序?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/729562/

c++ - 如何避免 C 和 C++ 中的命名空间冲突

我可以使用usingnamespace指令来避免标识符/变量名冲突,但是在大型项目中发生文件名或库名冲突时会发生什么。在C中,传统的方法是使用#include_next指令递归地添加文件。如何在不使用#include_next指令的情况下在C++中实现相同的功能,并解决应用程序和共享库之间文件名重复的问题。例如,解决AIXmath.h中的class()函数与名为“class”的标识符冲突的工作。/*GNULesserGPLv2.1orlater*/#ifndefFFMPEG_COMPAT_AIX_MATH_H#defineFFMPEG_COMPAT_AIX_MATH_H#definec

c++ - 如何避免 C 和 C++ 中的命名空间冲突

我可以使用usingnamespace指令来避免标识符/变量名冲突,但是在大型项目中发生文件名或库名冲突时会发生什么。在C中,传统的方法是使用#include_next指令递归地添加文件。如何在不使用#include_next指令的情况下在C++中实现相同的功能,并解决应用程序和共享库之间文件名重复的问题。例如,解决AIXmath.h中的class()函数与名为“class”的标识符冲突的工作。/*GNULesserGPLv2.1orlater*/#ifndefFFMPEG_COMPAT_AIX_MATH_H#defineFFMPEG_COMPAT_AIX_MATH_H#definec

c++ - 从 C 到 C++

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭7年前。Improvethisquestion大家好。我最近开始了一份新工作,我应该使用C++/过去5年我一直在用C语言进行编程。我正在寻找方法让我在OOP中达到可接受的水平。我有C++和OOP的所有基本概念,但没有太多的实际类设计经验。我真正在寻找的是学习类库设计的方法,因为我将在一个正在编写C++库供其他程序员使用的团队中工作。请提出诸如“职责分配”之类的原则,这些原则可以帮助我设计类(class)。

c++ - 从 C 到 C++

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭7年前。Improvethisquestion大家好。我最近开始了一份新工作,我应该使用C++/过去5年我一直在用C语言进行编程。我正在寻找方法让我在OOP中达到可接受的水平。我有C++和OOP的所有基本概念,但没有太多的实际类设计经验。我真正在寻找的是学习类库设计的方法,因为我将在一个正在编写C++库供其他程序员使用的团队中工作。请提出诸如“职责分配”之类的原则,这些原则可以帮助我设计类(class)。

c++ - C/C++ 图像加载

已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。关闭6年前。Improvethisquestion我正在开发一个游戏引擎,而我对于为多种格式编写图像加载器太无能为力了,所以我的问题是:是否有一个抽象的图像加载库来加载图像文件?我只需要加载文件,然后使用像素数组将它们放到屏幕上。 最佳答案 我一直是CImg的粉丝.它非常易于使用。另一位用户喜欢theanswer也是。我将发布我在答案中发布的相同示例,

c++ - C/C++ 图像加载

已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。关闭6年前。Improvethisquestion我正在开发一个游戏引擎,而我对于为多种格式编写图像加载器太无能为力了,所以我的问题是:是否有一个抽象的图像加载库来加载图像文件?我只需要加载文件,然后使用像素数组将它们放到屏幕上。 最佳答案 我一直是CImg的粉丝.它非常易于使用。另一位用户喜欢theanswer也是。我将发布我在答案中发布的相同示例,

c++ - 将静态库链接到共享库并隐藏导出的符号

我的链接器有一个烦人的问题。我想将一些符号从共享库链接到静态库,但不导出它的符号(即,我不能简单地合并库或与--whole-archive链接)。我想要的是链接(如链接可执行文件,解决undefinedsymbol)我的共享库到静态库并删除undefinedsymbol。我正在寻找的东西可能只是一个链接器选项,但我无法找到它。我会尽力描述问题(这并不容易),然后提供一个玩具最小的例子来玩。简要说明:我想使用LD_PRELOAD在可执行文件中捕获一些函数调用的技巧。此可执行文件链接到第三方共享库,其中包含我要捕获的函数的函数定义。这个第三方库还包含来自另一个库的符号,我也在我的库中使用它

c++ - 将静态库链接到共享库并隐藏导出的符号

我的链接器有一个烦人的问题。我想将一些符号从共享库链接到静态库,但不导出它的符号(即,我不能简单地合并库或与--whole-archive链接)。我想要的是链接(如链接可执行文件,解决undefinedsymbol)我的共享库到静态库并删除undefinedsymbol。我正在寻找的东西可能只是一个链接器选项,但我无法找到它。我会尽力描述问题(这并不容易),然后提供一个玩具最小的例子来玩。简要说明:我想使用LD_PRELOAD在可执行文件中捕获一些函数调用的技巧。此可执行文件链接到第三方共享库,其中包含我要捕获的函数的函数定义。这个第三方库还包含来自另一个库的符号,我也在我的库中使用它

c++ - 共享库与接口(interface)中的 STL 对象的 GCC 兼容性

我有一个带有STL对象的应用程序,用作插件编写器的C++接口(interface)的一部分。我知道最好的兼容性选择是使用C接口(interface),但目前不可行。我知道libstdc++中从GCC3.4到4.8的所有内容在ABI方面都高度兼容。因此,例如,如果我使用GCC4.1编译,而插件供应商编写使用GCC4.7编译的代码,那么在具有对应于GCC4.7或更高版本的libstdc++版本的平台上,除了极端情况外,所有情况都很好,提供的STL使用仅限于.so内部,并且外部.so接口(interface)使用纯C,遗憾的是我不是这种情况。所以,我很好奇关于用作插件接口(interface