草庐IT

data-prototype

全部标签

c++ - 在 C++ 中调用函数是不明确的。候选函数是原型(prototype)和函数本身

我正在完成StanfordCS106BC++作业,但作业存在“语义问题”。编译器似乎无法推断调用是针对函数还是函数原型(prototype)。我不明白为什么会调用原型(prototype)。我怎样才能做到调用函数而不是原型(prototype)?我收到的错误消息是“调用‘humansTurn’不明确”。错误消息与页面底部humanTurn(Lexicon,Lexicon)函数内的humanTurn(Lexicon,Lexicon)函数的调用有关。该函数的原型(prototype)在主函数之上。如有任何帮助,我们将不胜感激。亲切的问候,梅胡尔/**File:Boggle.cpp*----

c++ - 将函数分配给 std::function 类型时调用哪个函数原型(prototype)(以及如何调用)?

我有密码voidprints_one(){coutfoo;foo=prints_one;foo();return0;}它按预期工作;它打印“一个”。我不知道在赋值中调用了哪个赋值运算符原型(prototype)以及如何调用。看cppreference,好像就是这个函数templatefunction&operator=(Fn&&fn);但如果这是被调用的原型(prototype),我不明白函数如何绑定(bind)到右值引用。谢谢!更新:谢谢大家,我会阅读通用引用资料。关于40two的回答;此代码打印它是一个右值引用:templateclassFoo{public:Foo(){}Foo&

c++ - libstdc++ 的 std::vector<bool>::data 有什么作用?

根据标准,std::vector没有成员函数data().但是,以下代码片段可以使用带有libstdc++的最新GCC正常编译:#includeintmain(){std::vectorv;v.data();}如果我们尝试使用结果,结果返回类型是void.这是一些gcc扩展还是一个错误?如果前者为真,它有什么作用? 最佳答案 我的/usr/include/c++/4.8/bits/stl_bvector.h有://_GLIBCXX_RESOLVE_LIB_DEFECTS//DR464.Suggestionfornewmemberfu

c++ - 视觉 C++ 2008 : debugging data behind pointer array

如何在VisualStudio2008中查看数组指针后面的数据而不是第一项?如果能看到任意数量的项目,而不仅仅是第一个,那将非常有用。 最佳答案 char*p=newchar[100];在监window口中输入:p,100 关于c++-视觉C++2008:debuggingdatabehindpointerarray,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3659108/

c++ - priorC++11 中的 std::vector::begin() 是否等同于 C++11 中的 std::vector::data()?

是std::vector::begin()来自之前-C++11相当于std::vector::data()在C++11中?我问这个的原因是,在C++11之前,我曾经将std::vector::begin()视为指针,但在C++11之后,它不是,而且我不能转换为等效的指针。那么,我可以在C++11之后改用data()吗? 最佳答案 不,begin返回一个迭代器,而data返回一个指针。对于给定的实现,这些可能是同一件事,但您不应该指望这一点。 关于c++-priorC++11中的std::

c++ - 如果我不将返回值放入其原型(prototype)返回值的函数中怎么办

这个问题在这里已经有了答案:HowdoC++progsgettheirreturnvalue,whenareturnisnotspecifiedinthefunction?(6个答案)关闭9年前。我刚刚花了3个小时,可能更多,试图找到一个错误、段错误或bad_allow,这取决于我修改代码的方式,以了解是什么对象弄乱了堆栈或内存:我把我所有的对象有疑问……我屠杀了类(class)……(尽管如此,结果证明这是好的,因为这些类(class)最终表明自己毫无用处:-))……但是,事实上,真正的错误很简单:我没有在应该返回值的函数中编写return语句(在我的例子中,我需要返回一个std::v

c++ - 为什么data()和c_str()返回的是char const*,而operator[]返回的是char&?

为什么std::string::data和std::string::c_str()返回指向const字符的指针,而std::string::operator[]返回对可变字符的引用?std::stringstring("eightfoldisthegreatest");autos=string.data();*s='r';//illegalautot=&string[0];*t='r';//totallyfineauto&c=string[0];c='r';//totallyfine为什么std::string::data()和std::string::c_str()不返回char*,

c++ - 如何使用具有默认值的参数制作函数原型(prototype)?

A有一个原型(prototype)为的函数:voidarryprnt(int[],string,int,string,string);还有一个定义:voidarryprnt(int[]a,stringintro,intlen,stringsep=",",stringend="."){//stuff}我这样调用它:arryprnt(jimmy,"PSEUDOJIMMY:",15);...当我调用arryprnt时,我收到一个编译器错误,说我使用的参数太少,这是基于原型(prototype)所说的。“好吧,”我在想,“编译器不知道arryprnt的一些参数有默认值。我只是将参数从定义中复制

论文代码阅读及部分复现:Revisiting Deep Learning Models for Tabular Data

论文地址:https://arxiv.org/pdf/2106.11959.pdf项目地址:GitHub-yandex-research/rtdl-revisiting-models:(NeurIPS2021)RevisitingDeepLearningModelsforTabularData相关数据:https://www.dropbox.com/s/o53umyg6mn3zhxy/ 一、论文概述现有的关于表格数据做深度学习的模型层出不穷,但是作者认为,由于在真实使用模型时有着不同的基准以及实验场合,这些提出的模型没有被很好地比较。因此,论文作者在论文中对各类模型进行了综述,并且自身提出了一

c++ - 用 C++ 编写原型(prototype)构造函数

我正在使用二次表达式,其中y=ax^2+bx+c和a,b,c是常量,x是变量。这是我的类(class):classquadratic{public:doubleevaluate(constdoublex);voidgetCoefficients(double&A,double&B,double&C);voidsetCoefficients(constdoubleA,constdoubleB,constdoubleC);private:doublea;doubleb;doublec;};我要为该类创建两个构造函数,以便以下是合法的quadraticy1=quadratic(1.0,-5.