草庐IT

return_random

全部标签

c++ - 为什么我的程序在 return 语句处崩溃?

执行以下代码时出现异常boolFieldValueMessage::Get(conststd::string&field,double&value){stringtext;if(Get(field,text)){std::stringstreamsstr(text);sstr>>value;if(sstr.fail())returnfalse;elsereturntrue;}else{returnfalse;}}获取函数如下boolHashMapMessage::Get(conststd::string&field,std::string&value){Field2Value::ite

IMX6ULL开发板在查看ip时出现 random:crng init done

         本人使用的是百问网韦东山老师的imx6ullmini开发板,在设置好双网卡后,Windows和ubuntu可以互相ping通,但是在MobaXterm的串口下查看开发板ip时,在输入ifconfig命令后,出现random:crnginitdone语句。                在百度过后,明白了这句不是错误的意思,原因是random设备初始化太慢,应用程序调用random的函数时可能被阻塞。        因systemd在系统启动时需要熵信息,且内核在可用熵较少时会阻塞相应的调用,所以系统启动时可能挂起数分钟至数小时,直至随机子系统充分得到初始化(random:cr

c++ - 未记录的链接器问题 : "ld returned 253 exit status"

我收到一条错误消息,我找不到任何相关信息。在哪里可以找到有关ld的253退出状态的信息?我到处都找不到任何东西。Google上只有一个提及,而且它似乎与任何解决方案都无关。错误信息:collect2.exe:error:ldreturned253exitstatus对于链接器和编译器的详细输出,没有其他警告或错误甚至与上述内容模糊相关。尝试找出问题这个错误在某种程度上与程序大小有关,但程序还没有达到系统闪存大小,所以我有点困惑。如果我运行size,结果如下(设备限制为64KB):textdatabssdec45608396620052204当我将设备内存大小增加到128K时,没有任何变

c++ - 有没有办法检查 std::random_device 是否实际上是随机的?

引自cppreference:std::random_deviceisanon-deterministicrandomnumberengine,althoughimplementationsareallowedtoimplementstd::random_deviceusingapseudo-randomnumberengineifthereisnosupportfornon-deterministicrandomnumbergeneration.有没有办法检查当前的实现是否使用PRNG而不是RNG(然后说错误退出),如果没有,为什么不呢?请注意,一点谷歌搜索表明至少MinGW以这种方

c++ - "return (0);"函数中的 'main' 语句中的括号 0 - 它们的作用是什么?

这个问题在这里已经有了答案:Whendoextraparentheseshaveaneffect,otherthanonoperatorprecedence?(2个答案)关闭3年前。通常自动生成的c++"main"函数在最后return(0);或return(EXIT_SUCCESS);但是为什么上面的语句中有括号呢?是不是跟C语言什么的有关?//编辑我知道这是正确的,但有人把这些括号放在了一起是有原因的。这是什么原因?!

c++ - break/continue/return 应该被异常打断吗?

我在使用我的语言时遇到了一个有趣的流程控制场景。如果在处理break语句时抛出异常,会发生什么情况。GCC似乎认为中断流程丢失了,但标准似乎对应该发生的事情有些沉默。例如,下面的程序实际上应该做什么?#includeusingnamespacestd;structmaybe_fail{boolfail;~maybe_fail(){if(fail)throw1;}};intmain(){for(inti=0;i请注意,return也会被阻止,continue也会被阻止(在catch之后添加输出以查看)。尝试在block外goto也会被捕获。什么是正确的流程?该标准似乎没有解决这个问题:关

c++ - std::move 是否应该用于 return-statements 以提高效率?

我不知道下面代码中的std::move是做了什么好事还是完全错误?Object类同时定义了Move和Copy构造函数。首先:随着move:templatetemplateconstObjectObject::operator*(constF&rhs)const{returnstd::move(Object(*this)*=rhs);//Weendinmoveconstructor}第二种:不move:templatetemplateconstObjectObject::operator*(constF&rhs)const{returnObject(*this)*=rhs;//Weend

C++ typedef 和返回类型 : how to get the compiler to recognize the return type created with typedef?

#includeusingnamespacestd;classA{typedefintmyInt;intk;public:A(inti):k(i){}myIntgetK();};myIntA::getK(){returnk;}intmain(intargc,char*constargv[]){Aa(5);cout在这一行中,myInt未被编译器识别为“int”:myIntA::getK(){returnk;}如何让编译器将myInt识别为int? 最佳答案 typedef创建同义词,而不是新类型,因此myInt和int已经相同。问题

c++ - random_shuffle 不是真正随机的

我在像这样的vector上使用random_shuffle:#includevectordeck;//somecodetoaddcardstothedeckhererandom_shuffle(deck.begin(),deck.end());运行的时候deck的内容是乱码的,但是重启程序后还是保留了这个乱码。我错过了什么吗?我怎样才能让它真正随机? 最佳答案 您需要先使用srand为伪随机数生成器播种.#include#include...std::srand(std::time(0));vectordeck;//somecode

c++ - 'return *this' 在 C++ 中是什么意思?

我正在将C++程序转换为C#,但这部分让我感到困惑。return*this是什么意思?templateclassCDemoMessagePB:publicIDemoMessage,publicPB_OBJECT_TYPE{(...)virtual::google::protobuf::Message&GetProtoMsg(){return*this;}}它将如何转化为C#? 最佳答案 this表示指向对象的指针,所以*this是一个对象。因此,您要返回一个对象,即*this返回对该对象的引用。