草庐IT

Call-time

全部标签

c++ - 错误 : no matching function for call to . .. 在返回语句

我在openSUSELeap15上的Qt5.9.4上使用GCC7。我有以下类(class):classManSuppProps:publicQObject{Q_OBJECTpublic:explicitManSuppProps(QStringparentName);explicitManSuppProps(){}explicitManSuppProps(constManSuppProps&manSuppProps);explicitManSuppProps(ManSuppProps&manSuppProps);~ManSuppProps();private:QVector3Dm_sup

c++ - 虚假 "missing sentinel in function call"

如果编译为CandC++源代码,这个简单的代码片段会使用g++4.7.0生成“函数调用中缺少标记”警告。我相信这是编译器的错误,因为最终的NULL值(value)就在那里。#includeintmain(){execlp("mkdir","mkdir","-p","test",NULL);return0;}我说得对吗? 最佳答案 不,你错了。在C++中NULL类似于0或0L并且在C中可能是相同的。如果该常量的类型小于指针那么它是不安全的将其传递给可变参数函数,因为高位将被垃圾填满。在Linux上,execlp(1)手册页说:Thel

c++继承私有(private)复制构造函数: how doesn't this yield a compile time error?

在C++中,如果我们有这个类classUncopyable{public:Uncopyable(){}~Uncopyable(){}private:Uncopyable(constUncopyable&);Uncopyable&operator=(constUncopyable&);};然后我们有一个派生类classDervied:privateUncopyable{};我的问题是:当编译器在派生类中生成默认的复制构造函数和赋值运算符时,为什么这不会生成编译时错误?生成的代码不会尝试访问基类私有(private)成员吗? 最佳答案

c++ - "All memory allocated on the stack is known at compile time"是什么意思?

阅读thisgreattutorial关于堆栈与堆,我对这句话有疑问:在堆栈上分配的所有内存在编译时都是已知的。我的意思是,如果我处于取决于用户输入的for循环中(i从0到X),并且在for我在堆栈上分配内存(例如创建一些类的新实例并放入类容器中),它不知道编译程序时堆栈将如何增长(它错过了用户的输入)。我是不是误会了什么? 最佳答案 对读者来说,所做的陈述稍微简化了一点。你是对的,堆栈本质上是动态的,实际分配的数量可能因动态输入而异。这是一个带有递归函数的简单示例:voidf(intn){intx=n*10;if(x==0)ret

【论文阅读笔记】TimesURL: Self-supervised Contrastive Learning for Universal Time Series

TimesURL:Self-supervisedContrastiveLearningforUniversalTimeSeriesRepresentationLearning摘要 学习适用于多种下游任务的通用时间序列表示,并指出这在实际应用中具有挑战性但也是有价值的。最近,研究人员尝试借鉴自监督对比学习(SSCL)在计算机视觉(CV)和自然语言处理(NLP)中的成功经验,以解决时间序列表示的问题。然而,由于时间序列具有特殊的时间特性,仅仅依赖于来自其他领域的经验指导可能对时间序列是无效的,并且难以适应多个下游任务。 在1和2中,研究发现不适当的正负样本构造可能引入不恰当的归纳偏差,既不能保持时

c++ - 海湾合作委员会 "no matching function for call.."错误

我正在开发一个跨平台代码库,其中初始工作是使用MSVC2010编译器完成的。后来我在Linux上使用GCC(4.7)编译它。在许多情况下,我收到:“没有匹配的调用函数..”GCC中的错误。我注意到它主要在方法参数是非常量引用时提示。例如:voidMyClass::DoSomeWork(ObjectSP&sprt,conststd::stringsomeName,conststd::stringanotherName,conststd::stringpath,intindex){sprt->GetProp()->Update(path,false);}一旦我将方法更改为:voidMyCl

c++ - 将 long int 转换为 const time_t

我有变量tmit:longtmit;。我在这段代码中出错:printf("Time:%s",ctime(&tmit));错误说:无法将参数“1”的“longint*”转换为“consttime_t*{akaconstlonglongint*}”到“char*ctime(consttime_t*)”我的问题是,如果我想查看日期,如何在不丢失任何有关时间的信息的情况下将long转换为time_t或如何更改此代码。我正在研究这个answer,但我得到了错误。 最佳答案 一般情况下,您不能这样做,因为std::time_t之间不需要有任何合

c++ - 从编译时已知的日历日期创建 `std::chrono::time_point`

This答案显示了如何将字符串解析为std::chrono::time_point,如下所示:std::tmtm={};std::stringstreamss("Jan9201412:35:34");ss>>std::get_time(&tm,"%b%d%Y%H:%M:%S");autotp=std::chrono::system_clock::from_time_t(std::mktime(&tm));如果我想从一个(公历)日历日期创建一个std::chrono::time_point,其年、月和日在编译时已知,是否有任何比上面建议的从字符串解析它更简单的方法?

C++ 模板 : no matching function for call

考虑以下代码templateTexponentiel(Tval,unsignedn){Tresult=one;unsignedi;for(i=0;i(2.0f,3);cout编译器告诉我这个没有匹配函数来调用'exponentiel(float,int)'为什么?奇怪的是exponentiel与int一起使用。 最佳答案 问题出在模板参数列表中的Tone和1.0上。您不能拥有浮点类型的非类型模板参数,也不能将浮点值作为模板参数传递。这是不允许的(据我所知,没有充分的理由不允许这样做)。g++在这里的错误信息是相当无用的。Visual

C++::Boost::posix_time(经过的秒数。经过的小数秒)

我正在尝试对两个起初看起来并不难的问题给出答案。Q1:如何获取UTC.Now()和给定日期之间经过的秒数?A1:就像下面的代码一样!Q2:我如何确定自上次“完整”秒以来已经过去了多少小数秒?我想打印“total_elapsed_seconds.fractional_seconds”->“1234124.45”。我怎么做?A2:???#include#include#includeusingnamespacestd;usingnamespaceboost::gregorian;usingnamespaceboost::posix_time;voidmain(){ptimeJan1st19