草庐IT

external-system

全部标签

c++ - 除了使用 'extern' 关键字 :n3290 draft 之外,是否还有其他可能证明这一点

ISO草案N3290中的一点:非限定名称查找:第3.4.1节,第14段:Ifavariablememberofanamespaceisdefinedoutsideofthescopeofitsnamespacethenanynamethatappearsinthedefinitionofthemember(afterthedeclarator-id)islookedupasifthedefinitionofthememberoccurredinitsnamespace.例如:namespaceN{inti=4;externintj;}inti=2;intN::j=i;//N::j==4

c++ - 在不复制数据的情况下,决定 what() 从继承自 std::system_error 的类返回什么的符合标准的方法是什么?

我使用从std::system_error继承的类进行错误处理,我想控制调用what()时返回的内容。原因:标准(C++11和C++1yCD草案-N3690,下面的§引用是后者)没有指定what()返回的字符串应该是什么样子就像,它只是在§19.5.6.2(14)中给出注释:Note:ThereturnedNTBSmightbethecontentsofwhat_arg+":"+code.message().—endnote因此它应被视为依赖于实现。(顺便说一句,不应该是code().message()而不是code.message()吗?)所以,问题是:如果我想符合标准并且不依赖于实

c++ - 在命名空间中包装 extern "C"库时出现问题

我正在使用C++中的C库(libgretl),它的一些函数与我的代码冲突,所以我想将它包装在一个命名空间中,如下所示:namespacelibgretl{extern"C"{#include}}但是,这不会编译,我从gcc文件中得到“未定义”错误(在Windows上使用mingw32和gcc4.5.2)。第一个错误来自文件c++/cstddef的以下代码块:_GLIBCXX_BEGIN_NAMESPACE(std)using::ptrdiff_t;using::size_t;_GLIBCXX_END_NAMESPACE其中宏分别展开为namespacestd{和}。这些之后还有更多错误

c++ - 视觉口齿不清 : how to call functions in external C++ DLL

我有一个我编写的C++dll(native,而不是.net),我想使用VisualLisp的功能。任何人都可以指出如何执行此操作的示例,或者至少要阅读哪部分文档吗? 最佳答案 我通过为我的dll编写一个activex/COM包装器解决了这个问题,我认为这应该使将来更容易链接。在theswamp上开始一个线程从好人那里得到了一些关于如何从VisualLisp调用COM的答案。作为记录,它看起来像这样://inc++...(headerandIDLfilealsoneeded)hresulttimestwo(doublein,doubl

c++ - 错误 LNK2019 : unresolved external symbol

当我想编译我的opengl代码时,出现以下错误:Error1errorLNK2019:unresolvedexternalsymbol__imp__glewInit@0Error2errorLNK2019:unresolvedexternalsymbol__imp__glewGetErrorString@4Error3errorLNK2001:unresolvedexternalsymbol__imp____glewAttachShaderError4errorLNK2001:unresolvedexternalsymbol__imp____glewCompileShaderError

c++ - 如何摆脱这个错误 : "MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup"

我正在帮助一位friend学习C++,但老实说,我们需要很大的帮助。为什么我们总是得到这个错误:“MSVCRTD.lib(crtexe.obj):errorLNK2019:unresolvedexternal符号main在函数__tmainCRTStartup中引用”代码如下://MariaDelgado(1013725)-Coursework2-ProgramConductingtimbercomponentstructuraldesign#include#include#include#include#includeusingnamespacestd;//VariablesforS

c++ - 头文件中的 `static` , `extern` , `const`

//a.hexternintx1;staticintx2;intx3;staticconstintx4;classA{public:staticconstintx5=10;};a.h会被多个.cpp文件包含,我的问题是:1.x1只是一个声明,不是吗?所以它的定义应该在那些.cpp文件之一中完成,对吧?2.x2是一个定义,对吧?我曾经认为staticint和externint一样也是一个声明,但我错了。x2将仅在a.h中可见?3.如果a.h包含在多个.cpp文件中,x3会被定义多次,所以x3会导致编译错误,对吧?4.x4是一个定义,对吧?5.这里在A类中,x5是一个声明,是的。但是x4呢

java - 为同一个共享库调用 System.loadLibrary 两次

我遇到过两个jar库使用同一个共享库的情况。在每个库中,“主界面”类使用System.loadLibrary加载.so文件。我的问题是:如果用户决定在一个项目中使用这两个jar库,那么第二次为同一个.so文件调用System.loadLibrary是否会导致任何异常?还是系统“以某种方式处理”以防止共享库被加载两次?或者也许有一种“众所周知的模式”来处理这种情况?jni包装器的目标是在android上使用。我是这两个包装器库的作者,因此您可以完全控制Java源代码。 最佳答案 根据apidocs这应该不是问题:“如果使用相同的库名称

c++ - 如果嵌套 extern "C"会发生什么?

看起来嵌套extern"C"是合法的。例如:extern"C"extern"C"voidfoo();第二个extern"C"基本上被忽略了。这是由C++标准保证的吗?在哪里? 最佳答案 是的,但它实际上是第一个被忽略的extern"C"。引用标准[dcl.link]:Linkagespecificationsnest.Whenlinkagespecificationsnest,theinnermostonedeterminesthelanguagelinkage. 关于c++-如果嵌套e

c++ - 获取 POSIX 纪元作为 system_clock::time_point

我知道std::chrono::system_clock::time_point的默认值是时钟的纪元,但我在C++11标准中找不到任何规定system_clock的纪元与POSIX纪元(1970-01-01T00:00:00Z)相同。在Linux和Windows上假设是这种情况是否安全?或者使用std::chrono::system_clock::from_time_t(0)会更聪明吗? 最佳答案 标准离开std::chrono::system_clock::time_point的纪元未指定。std::chrono::system_