iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – Xcode / LLVM catch子句与派生类型不匹配大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

在 gcc 4.2中,这有效: #include <stdexcept> #include <iostream> int main() { try { throw std::runtime_error("abc"); } catch (const std::exception& eX) { std::cout << ex.what(); }
@H_944_18@ 在 gcc 4.2中,这有效:

#include <stdexcept>
#include <iostream>

int main() {
    try {
        throw std::runtime_error("abc");
    } catch (const std::exception& eX) {
        std::cout << ex.what();
    }
}

在Xcode 4.3.2(带有LLVM 3.1的iOS,-std = c 11)中,这会因为终止而失败,称为抛出异常,从未到达NSLog(…)行:

#include <stdexcept>

int main() {
    try {
        throw std::runtime_error("abc");
    } catch (const std::exception& eX) {
        NSLog(@"%s",ex.what());
    }

    return UIApplicationMain(argc,argv,nil,nil);
}

但这有效:

#include <stdexcept>

int main() {
    try {
        throw std::runtime_error("abc");
    } catch (const std::runtime_error& eX) {
        NSLog(@"%s",nil);
}

是什么赋予了?

解决方法

gcc是正确的:

这听起来像是一个xcode bug(而且是一个令人惊讶的基本错误!)

@H_673_51@

大佬总结

以上是大佬教程为你收集整理的c – Xcode / LLVM catch子句与派生类型不匹配全部内容,希望文章能够帮你解决c – Xcode / LLVM catch子句与派生类型不匹配所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。