草庐IT

conditional-formatting

全部标签

c++ - 无论如何有一个 valgrind 消息 "Conditional jump or move depends on uninitialized value"可以是所谓的 'false positive'

我在这里找到的大多数问题都提供一段代码,并由指出实际错误的人回答。我的问题是关于一般未初始化值的条件跳转。我可以理解,如果确定此分配仅完成一次并且在程序的生命周期内可能需要,则不必在程序结束时清理一block内存。据我所知,当程序终止时,GType系统会留下大量未释放的内存。这些未释放的block可以被视为“误报”。但是“有条件的跳跃或移动未初始化的值”会是误报吗?我唯一能想出的是有人通过读取随机地址来实现(坏的)随机函数(其中随机地址本身是棘手的部分;)。另一个例子可能是硬件映射到内存的一部分然后被读取,但这主要是由驱动程序而不是由普通用户应用程序完成的。是否有任何其他示例(最好是C

c++ - std::conditional 如何工作

我们有这个叫做std::conditional的元编程小奇迹描述here.在同一引用文献中,它说可能的实现是templatestructconditional{typedefTtype;};templatestructconditional{typedefFtype;};所以如果在代码中我做类似的事情typenamestd::conditional::typea;编译器将遵循第一个定义,如果我做类似的事情typenamestd::conditional::typeb编译器将采用第二个。为什么这样行得通?这里有什么编译规则? 最佳答案

c++ - 为 std::put_time 调试断言 "Invalid format directive"

我正在学习使用C++11chrono,并尝试输出时间。OtherSOquestions显示一些代码示例,例如std::chrono::time_pointnow=std::chrono::system_clock::now();std::time_tnow_c=std::chrono::system_clock::to_time_t(now-std::chrono::hours(24));std::cout当我在VS2012上调试运行它时,我得到一个调试断言,声称我使用了“无效的格式指令”。如果我使用std::strftime,也会发生同样的情况。我假设Microsoft不支持%F和%

c++ - 使 Clang-Format 忽略换行符的注释

是否可以告诉Clang-Format忽略换行操作的注释?这个想法是遵循“代码格式良好,即使注释超过换行边距”的风格。如果代码不超过边距,则不应将代码分成多行,但注释会。例如//desiredbehaviour:shortcode=shortCode+longlonglongCode;shortcode=shortCode;//longcommentwithoutalinebreak//notdesiredbehaviour:shortcode=shortCode;//longcommentwithoutalinebreak 最佳答案

c++ - 使用 std::atomic 和 std::condition_variable 同步不可靠

在用C++11编写的分布式作业系统中,我使用以下结构实现了一个栅栏(即工作线程池外的线程可能会要求阻塞,直到所有当前计划的作业完成):structfence{std::atomiccounter;std::mutexresume_mutex;std::condition_variableresume;fence(size_tnum_threads):counter(num_threads){}};实现围栏的代码如下所示:voidtask_pool::fence_impl(void*arg){autof=(fence*)arg;if(--f->counter==0)//(1)//weha

c++ - Windows 上的 std::conditional_variable::wait_for、std::thread::sleep_for 受调整时钟的影响

嗯。我有Win10x64和这个非常简单的代码:intmain(){std::conditional_variablecv;std::mutexm;std::unique_locklock(m);while(1){cv.wait_for(lock,1000ms,[](){returnfalse;});std::cout是的。代码就像我期望的那样工作;表明'!'每一秒。但是,如果我更改本地时间(例如减去1小时/分钟),它会永远有效。如果我用WinAPISleep(1000)替换cv.wait_for(...)它工作正常。WinAPISleepConditionVariableCS也能正常工

c++ - 为什么 std::condition_variable 作为类成员会导致 std::thread 出现编译错误?

我尝试将std::condition_variable作为类成员,但在将此类的对象传递给std::thread时出现了很多编译错误。我从我的实际程序中删除了所有其他代码,并以下面的最小代码结束。删除std::condition_variable不会导致任何问题。我尝试在构造函数中“初始化”变量,并使其成为inline,但都没有帮助。#include#includestructThreadHandler{voidoperator()(){}std::condition_variablecond;};intmain(){ThreadHandlerth1;std::threadt1(th1)

windows - 我该如何解决 VBoxManage.exe : error: Format autodetect failed: VERR_FILE_NOT_FOUND

当我尝试在下面运行时出现以下错误。我一直在尝试按照此http://www.randallkent.com/virtual-box/change-uuid-of-virtualbox-vdi中的说明进行操作链接。我做了以下事情。C:\ProgramFiles\Oracle\VirtualBox>VBoxManage.exeinternalcommandssetvdiuuid"C:\Security"下面出现这个错误,VBoxManage.exe:错误:格式自动检测失败:VERR_FILE_NOT_FOUND如何解决上述错误? 最佳答案

Windows - 在本地站点获取 ERR_SSL_SERVER_CERT_BAD_FORMAT

我在Windows10上工作,使用Ampps。我使用支持SSL的Ampps面板创建了一个域(tps.local)。我看到它创建了一个证书,但是当我在Chrome中工作时,我得到了GetERR_SSL_SERVER_CERT_BAD_FORMAT错误。我试过:导入受信任的证书。在Windows受信任站点列表中设置url。更改Chrome中的标志以允许不安全的本地主机证书将时间调整设置为自动已清除SSL缓存。每次更改后,我都会使用chrome://restart重新启动chrome我必须创建一个新证书吗?我已经为Windows安装了OpenSSL,但我不确定(如果需要)如何继续,因为Amp

conditional-statements - 用于处理非空对象和非空字符串表示的 Kotlin 习语

我有一个可以为空的属性(Java对象),它知道如何将自己转换为字符串,如果这个表示不为空,我想用它做点什么。在Java中,这看起来像:MyObjectobj=...if(obj!=null){Stringrepresentation=obj.toString();if(!StringUtils.isBlank(representation)){doSomethingWith(representation);}}我正在尝试找到将其转换为Kotlin的最惯用的方法,并且我有:with(obj?.toString()){if(!isNullOrBlank()){doSomethingWith