草庐IT

boolean_var

全部标签

C++ ASM Inline如何使用boolean?

说我有这样的东西..boolisPatched;我有一些其他GUI,我在其中设置了isPatched=true;和isPatched=false;,isPatched=!isPatched;void__declspec(naked)test(void){//__asm{PUSHADPUSHFDMOVEAX,isPatchedCMPEAX,0jenoPatchedMOVEAX,DWORDPTRDS:[ESI+0x77C]MOVJohn.oldA,EAXMOVEAX,John.AMOVDWORDPTRDS:[ESI+0x77C],EAXJMPfinishnoPatched:PUSHEDXM

java - C++ 将 HashMap<string, boolean> 对象返回给 Java

我有一个JAVA调用的JNI函数,它需要构建并返回一个HashMap。map的键是“字符串”,相应的值是“boolean值”或“boolean值”(只要有效,任何一个都可以)。使用我当前的代码(如下),字符串已成功添加到返回的映射中,并且可以在Java中访问。然而,当试图访问JAVA中的值时,它出现为空。jclassmapclass=env->FindClass("java/util/HashMap");jmethodIDinitmeth=env->GetMethodID(mapclass,"","()V");jmethodIDputmeth=env->GetMethodID(mapc

c++ - "if (var)"使用数字转换而不是 bool 值

为什么if(var)...使用数字转换而不是bool值?我有一个实现两者的类:operatorint(){....}operatorbool(){....}但是如果我使用:if(my_class_var)....;然后使用int转换而不是boolean?!!?!编辑:正如versedmarald所说,这是正确的。我发现了不同之处。我实际上使用的是:operatorint(){....}operatorbool()const{...}还是被迷住了,为什么不一样?gcc版本4.6.2 最佳答案 如果你说的是真的,我认为你的编译器违反了标

python - while (cin >> var) 在 python 中的等价物是什么?

在线比赛中,当没有指定输入的长度,无法通过程序直接读取输入文件时,可以使用C++的这段代码:while(cin>>var){//dosomethingwithvar}Python的等价物是什么?不使用任何与文件相关的函数,例如open()write()... 最佳答案 Python中没有直接的等价物。但是你可以用两个嵌套循环来模拟它:forlineinsys.stdin:forvarinline.split():如果您需要的不是字符串,则需要在单独的步骤中进行转换:var=int(var)

c++ 相当于 $obj->{$var}

我正在寻找以下PHP代码的C++等价物$obj=newstdClass();$obj->test="aaaa";$var="test";echo$obj->{$var};在C中甚至可能吗?我一直在寻找几个小时,但没有运气。谢谢 最佳答案 尝试:#include#include#includeusingnamespacestd;intmain(){unordered_mapobj;obj["test"]="aaaa";stringvar="test";cout这并不完全相同,因为这里的两种情况下test都是一个字符串。如果重要的是"t

c++ - `type *var = (int)0` ,合法与否?

下面的例子:char*var=(int)0;在gcc和cl.exe上编译,但在clang中导致错误:cannotinitializeavariableoftype'char*'withanrvalueoftype'int'谁是正确的?对于它的值(value),C++11说(强调我的)4.10/1Anullpointerconstantisanintegralconstantexpression(5.19)prvalueofintegertypethatevaluatestozerooraprvalueoftypestd::nullptr_t.Anullpointerconstantca

c++ - Const 接收一个 var,我不能将它传递给模板

我想做的是:intconstbitsPerInt=log2(X);bitsetbits(arandomnumber...);但是我得到这个错误:'bitsPerInt'cannotappearinaconstantexpressionerror:templateargument1isinvalid 最佳答案 如果你真的需要它工作,制作你自己的在编译时工作的log2并将它传递给bitset的模板参数。constexprunsignedLog2(unsignedn,unsignedp=0){return(nbits;Liveexampl

c++ - 在 set<int> 与 vector<bool> 与 vector<boolean_t> 之间进行选择以用作位图(位集/位数组)

给定一系列索引(标识符),我想将每个索引映射到一个bool值,即://interfacepseudocodeinterfacebitmap{boolidentifier_is_set(unsignedintid_idx)const;voidset_identifier(unsignedintid_idx,boolval)const;};这样我就可以设置和查询每个ID(索引)是否已设置,您更喜欢用什么来实现它?我认为这叫做位数组或位图或位集,如果我错了请纠正我。假设最大标识符是预先确定的并且不大于1e6(1m),可能更小(10k-100k)。(这意味着sizeof(int)*maximu

c++ - 依赖整数 boolean 转换的枚举

在我的编译器项目中,我有一个像这样的枚举enumResult{No,Maybe,Yes};我已将No明确地放在第一个位置,这样我就可以依赖false的boolean值评估。如果我的编译器不确定某事,并且必须等到运行时才知道事实,它的分析函数将返回Maybe。像这样使用if(!typesEqual(t1,t2)){diagnose(types_unequal)我想知道您或您的公司是否认为不与No明确比较是不好的作风if(typesEqual(t1,t2)==No){/*...*/}明确比较对我来说似乎很罗嗦,但依赖隐式boolean转换不知何故让我感到内疚。您以前有过这种感觉吗?您是如何

c++ - boolean 冒号初始化

在阅读一些C++代码时,我看到了类中的这一行,并对此感到困惑:boolx:1;在调试版本中,我注意到“x”被初始化为“false”,但我找不到任何相关文档。谁能告诉我这个语法的作用? 最佳答案 这是一个位域。阅读您的C++教科书中的位域。false的初始化与声明无关。是否由您的代码保证取决于您的代码(未给出)。C++标准为编译器提供了大小为1的整数和枚举位域的一些余地:在这样的字段中存储值1,您可能会得到值-1。令人高兴的是,这仅适用于大小为1的字段,不适用于bool类型的字段。 关于c