草庐IT

CONSTANT_NAME

全部标签

c++ - 获取错误 : 'mutex' in namespace 'std' does not name a type in MinGW mysys prompt

我已经从官方网站下载了MinGW并将其安装在我的Windows8.1机器上。运行g++--version给我g++.exe(GCC)4.8.1。我正在尝试在MinGW编译器中编译现有的代码库,但它因以下错误而失败:error:'mutex'innamespace'std'doesnotnameatypeprivate:std::mutexm_Mutex;^error:'condition_variable'innamespace's还有更多与锁定和线程相关的错误。!我能够在Cygwin-64中编译相同的代码库,没有任何问题。我需要在MinGW中成功构建和编译,以便创建一些与MSVS兼容

【ARM 嵌入式 编译系列 2.4 -- 编译参数-Wl,--gc-sections | -wsuggest-attribute=pure | -wreal-q-constant |】

请阅读【嵌入式开发学习必备专栏之ARMGCC编译专栏】文章目录概述编译参数详细介绍-Wl选项例子:--gc-sections``--gc-sections例子:-Wshadow例子:-Wlogical-op例子:-Waggregate-return例子:-Wfloat-equal例子:-Wconversion例子:-Wpointer-arith例子:概述在使用GCC(GNUCompilerCollection)进行编译时,可以通过不同的编译参数(标志)来控制编译行为、优化级别、警告输出等。以下是您列出的一些GCC编译参数的介绍:编译参数详细介绍参数作用–all-warnings与-Wall相同

c++ - 错误 : Expected template-name before '<' token

我正在尝试编译一个实现chain和chainNodes的程序并在以下行(第22行)出现错误:classchain:publiclinearList错误是:Error:expectedtemplate-namebefore'知道为什么会出现这种情况吗?我的代码如下://linkedimplementationofalinearlist//derivesfromabstractclasslinearListjusttomakesure//allmethodsoftheADTareimplemented#ifndefchain_#definechain_#include#include#in

c++ - 哪个 Clang 警告等同于 GCC 的 Wzero-as-null-pointer-constant?

我们的项目使用C++11/14,我们希望使用nullptr而不是0或NULL指针,即使0(作为整数文字)是允许的。我有以下代码:intmain(){int*ptr1=nullptr;//#1int*ptr2=0;//#2}如果我使用GCC(5.3.0)和标记-Wzero-as-null-pointer-constant进行编译,它会在#2中发出警告,但我可以'在Clang中找不到类似的标志。如果我使用Clang(3.7.1)和标志-Weverything编译代码,我不会收到任何关于#2的警告。那么,有什么办法可以在Clang中得到类似的警告吗? 最佳答案

c++ - 多次调用 typeid(T).name() 会返回同一个指针吗?

在C++中,我可以使用typeid运算符来检索任何多态类的名称:constchar*name=typeid(CMyClass).name();返回的constchar*指向的字符串willbeavailabletomyprogramforaslongasthecorrespondingclassexists.typeid(T).name()的多次调用是否会为相同的classT返回相同的指针值,或者它们是否允许返回不同的指针? 最佳答案 不,它们不需要返回相同的指针。我在野外系统也看到过没有。每个DLL都有自己的包含nmae的类型对象

解决在idea上连接linux开启的redis服务失败Failed to connect to any host resolved for DNS name.(史上最强+最细解决方案)

今天在idea上连接reids服务器时出现错误FailedtoconnecttoanyhostresolvedforDNSname.那么我们来一步一步来进行如下步骤。首先找到自己的redis.conf文件,可以使用这个搜索按钮直接搜索redis.conf文件(因为不同人的redis.conf文件可能不一样)找到该文件后我们需要修改如下几个地方。(1)、daemonizeyes大概在136行(2)、protected-modeno大概在88行(3)、注释掉bind127.0.0.1大概在69行这里需要注意的是注释的不是上面的而是箭头所指的地方。修改完成后我们wq保存退出。下面是打开端口6379(

C++ 错误 : Type Name is Not Allowed

我正在尝试学习指针参数中的新类(class),我想让函数senior和everyoneElse接受指针x,但是当我尝试使用指针pAge调用函数时,它显示错误:类型名称是不允许的。怎么了?#includeintsenior(int*x);inteveryoneElse(int*x);usingnamespacestd;intmain(){intage(0);int*pAge(&age);cout>age;if(age>59)senior(int*pAge);elseeveryoneElse(int*pAge);return0;}intsenior(int*x){return*x;}int

c++ - 在 C++ 中传递变量 "name"

我目前仅使用以下模板来检查NULL指针,如果为NULL,则将错误消息打印到日志文件,然后返回false。templatestaticboolisnull(T*t,std::stringname=""){_ASSERTE(t!=0);if(!t){if(!(name.length()))name="pointer";PANTHEIOS_TRACE_ERROR(name+"isNULL");returnfalse;}returntrue;}我目前这样调用它:if(!(isnull(dim,BOOST_STRINGIZE(dim))))returnfalse;如果您注意到我需要将要打印到日志

c++ - 如何在 C++ 中删除与 typeid( ).name( ) 关联的数字?

我有一个工厂方法类,它生成“Items”并返回指向它创建的Item的指针。我有Item的派生类。例如,Item可以是“武器”、“消耗品”或“盔甲”。我需要检测创建了哪种类型的项目,以便我可以将项目正确地转换为该类型。我做了一些测试线,看起来它正在做我想要的,除了添加与类型关联的数字。示例:我有这条线:cout它返回基类Item,但它会显示:“4Item”然后我将其更改为:cout这会给我正确的派生类型,但也会抛出那个数字。所以我得到类似“5Armor”的东西为什么pItem返回基类?为什么它返回一个类型为int的值?我怎样才能删除int?做我想做的事情的解决方案——以一种“作弊”的方式

Android Studio:gradle'project_name'项目刷新失败

我最近下载并安装了最新版本的AndroidStudioBundle2.3.3。我得到一个gradle'project_name'项目刷新失败错误{错误:无法下载jsr305.jar(com.google.code.code.findbugs:jsr305:2.0.1):脱机模式没有可用的可用版本}IDE。我有一个持续的Internet连接,甚至下载了JSR305.jar,并将其放在AndroidStudioProgram文件中的Gradle目录中,但问题仍然存在。我尚未开始编码或开发布局。错误的屏幕截图看答案在您的应用程序的build.gradle文件中添加以下内容:(使用最新版本)andro