草庐IT

未知数

全部标签

c++ - 如何链接未知库

例如,我正在尝试使用GLFW3,它向我抛出以下错误x11_init.c:-1:error:undefinedreferenceto`XIQueryVersion'.我只知道它与X11有关,但我怎么知道我必须链接哪个库?你会如何解决这个问题? 最佳答案 您可以使用nm列出系统库中定义的符号,以便找到包含您丢失的符号的符号:find/usr/lib/-typef-name\*.a\-execnm-gAC--defined-only{}2>/dev/null\;\|grep\XIQueryVersion哪些输出:/usr/lib/x86_

c++ - 是否可以检查是否为类定义了成员函数,即使成员是从未知基类继承的

我发现类似的问题和答案,如thisone.但是,正如我所尝试的那样,只有在被测试的成员直接定义在被测试的类中时,这个SFINAE测试才会成功。例如下面的类B,D1打印HAS而其他两个打印NOTHAS。有没有办法判断一个类是否有成员,是自己定义的,还是基类定义的,这种情况下不知道基类的名字。动机是我想编写一个通用函数,如果它存在,它将调用某个方法(无论是否来自基类,参数的类型都是通用的,保留其可能基类的类型)。#includeclassHasFoo{public:typedefcharSmall;typedefstruct{char;char;}Large;templateclassSF

c++ - 未知返回类型错误 (C++)

我的问题是我需要先定义我的接口(interface),然后在代码中进一步实现它,但我的问题是当我实现方法时,应该返回类内部已知类型的函数在类外部似乎是未知的。这是我的代码:classTest{classInner{};public:Inner*foo(void);};Inner*Test::foo(){}此代码产生错误,因为类型Inner对于类外的函数是未知的。任何人都可以帮助我如何制作简单的函数来返回仅在类内部定义的类型吗?感谢您的帮助。 最佳答案 你需要Test::Inner*Test::foo(){如果成员函数定义在类定义之外

c++ - 如何打印未知类型的对象

我有一个用C++编写的模板化容器类,它类似于std::map(它基本上是std::map的线程安全包装器)。我想编写一个成员函数来转储有关map中条目的信息。但是,显然,我不知道map中对象的类型或它们的键。目标是能够处理基本类型(整数、字符串)以及我特别感兴趣的一些特定类类型。对于任何其他类,我想至少编译,最好做一些有点智能的事情,比如打印对象的地址。到目前为止,我的方法类似于以下内容(请注意,我实际上并没有编译这个或任何东西......):templateclassThreadSafeMap{std::mapstorageMap;...dumpKeys(){for(std::map

c++ - 将未知长度的 char** (c) 转换为 vector<string> (c++)

这个问题在这里已经有了答案:convertinganarrayofnullterminatedconstchar*stringstoastd::vector(4个答案)copyingcarrayofstringsintovectorofstd::string(4个答案)关闭9年前。如何将Cchar**转换为C++vector?是否有一些内置功能可以用来执行此操作,还是通过一系列迭代步骤来完成它更好?编辑:由于各种原因,C数组中的元素数量未知。我可以将其作为另一个参数传递,但这是绝对必要的吗?

c++ - 如何找到未知整数类型的最大值

如何找到未知类型的最大整数值?有没有比这更有效的东西:templateTtest(Ti){if(((T)-1)>0)return-1;Tmax_neg=~(1 最佳答案 使用std::numeric_limits::max().自C++11起,此函数为constexpr并因此在编译时进行评估。 关于c++-如何找到未知整数类型的最大值,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

c# - 遍历从 C# 传递的未知 C 结构

我正在开发一个应从C#程序访问的c.dll。理想情况下,.dll应该接收在C#中定义的任何结构并对其执行某些操作。因此,最初,Cdll的结构类型和大小是未知的。我能够通过Cextern函数传递该结构,并且它应该可以正常接收,但是,有没有办法找出这个接收结构的大小和特征?有没有办法遍历其成员?这是为dll定义的C函数externint__cdecltestCSharp(mystruct*Test){//sizeof(Test)is4,soitisokfor(inti=0;i这是C#代码[StructLayout(LayoutKind.Sequential,CharSet=CharSet.

c++ - 通过引用传递未知等级的数组

我正在尝试通过引用传递未知维数(等级)的数组。基本上,我想做这样的事情(不编译)templatevoidf(T(&arr)[dims]...)//notworking{//wouldliketomodifytheelementsof`arr`here,accordingtosomerule}intmain(){intarr[2][3][4];//rank3f(arr);}有什么办法可以实现吗?特别是,是否有可能以某种方式使用可变参数模板方法?我可以做通用的templatef(T&arr),但在这种情况下,我如何能够在不显式传递它们的情况下恢复尺寸?(即使使用可变参数模板方法,我也不确定

c++ - 编译器可以报告未知属性的错误吗?即使有范围?

在N3291“7.6.1.(3/5)属性语法和语义[decl.attr.grammar]”中,关于如何在源代码中编写属性I阅读Theuseofanattribute-scoped-tokenisconditionally-supported,withimplementation-definedbehavior.和Foranattribute-tokennotspecifiedinthisInternationalStandard,thebehaviorisimplementation-defined.这是否意味着,属性规范如[[dllexport]][[hiding]][[unused

香草JavaScript中的dropdowm菜单 - 对于未知数量的按钮

拜托,你能给我一个香草JS的提示吗?我有下拉菜单通过按钮单击打开,并有2个问题:1)下拉次数通过单击具有唯一ID的按钮打开。我需要得到它使用班级名称,因为它必须在多个按钮上工作-它们的数量未知(它们将从RESTAPI加载)。在jQuery中,它可以正常工作,但我需要在香草JS中。如果我尝试按类名选择按钮,它将返回按钮数组,但是我不知道如何从数组中选择哪个按钮。2)下拉菜单仅在第二次单击按钮上打开(然后它像应有的那样切换),但是第一次点击没有任何操作。我的代码在这里://selectButton-nowbyID-butIneedunknownnumberofbuttons-fromRESTAPI