我正在使用XCode 4.6.2调试OSX 10.9.5上的一个C ++项目(一个Adobe InDesign插件)。我在下面的代码中遇到了一个非常奇怪的问题,即使其中的条件为valid / true,下面代码中的if语句也会被跳过。当控制到达此if语句时,insertSinglePageElement的值为1,insertSinglePageElement是bool16变量。 它必须返回true,仍然会跳过if块中的代码。
此外,Xcode是否允许您查看相应的汇编代码?如果是,那么如何?
bool16 insertSinglePageElement = kTrue;
...
//code
...
if(insertSinglePageElement == kTrue)
{
msgs = insertPageElementToPage(pe, pageData->grid, &pageName, pageData->presentationID, IDPageElementMap, true);
} else {
//Else Block
上图显示变量和调试器的值,显示第二个图像中的代码从第一个图像中跳过一步。
答案 0 :(得分:0)
这个问题的原因是XCode4.6.2(使用Apple LLVM 4.2)显示为真的TRUE块不正确。打开优化后,X-Code开始显示为False。