Questions tagged «exception»

异常是一种异常情况,需要偏离程序的正常流程。通常,异常不应导致完全失败,而应由异常处理程序来处理。异常处理是许多编程语言中的内置构造。通常,通过展开堆栈来处理异常,从而回滚到异常范围之外的已定义状态,然后调用处理程序块或例程。

5
在Django中的自定义管理器中捕获DidsNotExist异常
我有一个Django模型的自定义管理器。我似乎无法在此处捕获DidNotExist异常。我知道如何在模型中执行此操作,但在这里不起作用: class TaskManager(models.Manager): def task_depend_tree(self, *args, **kwargs): if "id" in kwargs: try: task = self.get(id=kwargs["id"]) except DoesNotExist: raise Http404 Get_object_or_404也不起作用。怎么了

6
处理KeyNotFoundException的最佳方法
我正在使用字典为正在处理的程序执行查找。我在字典中运行了一堆键,并且我期望某些键没有值。我抓住KeyNotFoundException它发生的地方,并吸收它。所有其他异常将传播到顶部。这是处理此问题的最佳方法吗?还是应该使用其他查询?字典使用int作为其键,并使用自定义类作为其值。

15
无法加载文件或程序集System.Net.Http.Primitives。找到的程序集的清单定义与程序集引用不匹配
我正在开发一个使用Google API的程序。但是,每次运行程序时,都会不断出现以下错误: 无法加载文件或程序集'System.Net.Http.Primitives,版本= 1.5.0.0,区域性=中性,PublicKeyToken = b03f5f711d50a3a'或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。 我正在使用Visual Studio 2012 Express。我尝试过此链接,并浏览了许多论坛,但似乎都没有用。主要问题似乎来自我引用的DLL文件“ Google.Apis.dll”,它引用了System.Net.Http.Primitives v1.5.0.0。但是,我的程序引用的版本是2.2.13.0。我尝试使用程序引用v1.5.0.0代替(我设法找到dll以及Google.Apis的源代码),但这仅引起了另一个问题,其中我需要更新版本的System.Net。 Http.Primitives。 我一直在尝试解决此问题的方法,但是似乎找不到任何可行的方法。谢谢您的时间。

8
Google C ++样式指南的无例外规则;STL?
Google的C ++风格指南说“我们不使用例外”。该样式在异常使用方面未提及STL。由于STL分配器可能会失败,因此它们如何处理容器引发的异常? 如果他们使用STL,如何将分配失败通知呼叫者?STL方法(例如push_back()或map)operator[]不会返回任何状态代码。 如果他们不使用STL,则使用什么容器实现?
68 c++  exception  stl 

2
如何将异常的集合作为根本原因传递?
某种方法myMethod调用多个并行执行并等待其终止。 这些并行执行可以例外完成。因此myMethod获得一个例外列表。 我想将异常列表作为根本原因传递,但是根本原因可能只是单个异常。当然,我可以创建自己的异常来实现所需的功能,但是我想知道Java,Spring或Spring Batch是否具有类似这样的功能。
52 java  exception 

5
如何在C#中捕获通用异常的所有变体
我想捕获一个通用异常类的所有变体,我想知道是否有一种方法可以在没有多个catch块的情况下进行。例如说我有一个异常类: public class MyException<T> : Exception { public string MyProperty { get; } public MyException(T prop) : base(prop.ToString()) { MyProperty = prop?.ToString(); } } 和两个派生类: public class MyDerivedStringException : MyException<string> { public MyDerivedStringException(string prop) : base(prop) { } } public class MyDerivedIntException : MyException<int> { public MyDerivedIntException(int prop) : base(prop) …
22 c#  generics  exception 

2
抛出和捕捉整数如何工作?
使用此代码: int main() { try { throw -1; } catch (int& x) { std::cerr << "We caught an int exception with value: " << x << std::endl; } std::cout << "Continuing on our merry way." << std::endl; return 0; } 我们有: /tmp$ ./prorgam.out Continuing on our merry way We caught …

1
捕获并重新抛出异常,但这不是异常
我偶然发现代码看起来像这样: void run() { try { doSomething(); } catch (Exception ex) { System.out.println("Error: " + ex); throw ex; } } void doSomething() { throw new RuntimeException(); } 这段代码使我感到惊讶,因为它看起来像run()-method能够抛出an Exception,因为它可以捕获Exception然后重新抛出它,但是该方法未声明为throw Exception,显然不需要。这段代码可以很好地编译(至少在Java 11中)。 我的期望是我必须throws Exception在run()-method中声明。 额外的信息 以类似的方式,如果doSomething被声明为throw,IOException那么即使被捕获并重新抛出,也只需IOException在run()-method中进行声明Exception。 void run() throws IOException { try { doSomething(); } catch (Exception ex) { System.out.println("Error: " …
10 java  exception  throws 

2
使用空指针参数和不可能的后置条件构造标准异常
考虑以下程序: #include<stdexcept> #include<iostream> int main() { try { throw std::range_error(nullptr); } catch(const std::range_error&) { std::cout << "Caught!\n"; } } 使用libstdc ++调用的GCC和Clang std::terminate并通过消息中止程序 terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_S_construct null not valid 用libc ++ segfaults构造异常的Clang。 见godbolt。 编译器的行为符合标准吗?标准[diagnostics.range.error](C ++ 17 N4659)的相关部分确实说std::range_error有const char*构造函数重载,应该优先于const std::string&重载。本节也没有说明构造函数的任何前提条件,而只说明了后置条件 后置条件:strcmp(what(), what_­arg) == 0。 如果what_arg为空指针,则此后置条件始终具有未定义的行为,那么这是否意味着我的程序也具有未定义的行为并且两个编译器的行为一致?如果没有,应该如何阅读标准中如此不可能的后置条件? …

2
在CATCH块中区分异常和失败[RAKU]
我们知道,可以通过CATCH块来处理故障。 在下面的示例中,我们在“ other-sub”中创建一个“ AdHoc”失败,并在CATCH块中(在“ my-sub”中)处理异常。 sub my-sub { try { CATCH { when X::AdHoc { say 'AdHoc Exception handled here'; .resume } default {say 'Other Exception'; .resume} } my $b = other-sub(); $b.so ?? $b.say !! 'This was a Failure'.say; } } sub other-sub { fail 'Failure_X' } my-sub(); 输出如下: …


1
[iOS 13]:致命异常:NSInvalidArgumentException无法将自身添加为子视图([NSCache init])
我在Stack Overflow上看到过类似的问题,但它们并没有帮助。 我使用Xcode 11和iOS 13 SDK构建了该应用程序。问题是,即使我的应用程序支持iOS 10+,并且只有约50%的iOS 12用户,我都只能在iOS 13+上获得所有这些崩溃。另外,我无法调试或复制它。 从此信息中我推断出该问题必须特定于iOS13。最近有人遇到过同一问题吗?可能的原因,解决方法? 这是Crashlytics的堆栈跟踪: Fatal Exception: NSInvalidArgumentException 0 CoreFoundation 0x1c25e1c30 __exceptionPreprocess 1 libobjc.A.dylib 0x1c22fc0c8 objc_exception_throw 2 CoreFoundation 0x1c24d13ac -[NSCache init] 3 UIKitCore 0x1c6b189a8 -[UIView(Internal) _addSubview:positioned:relativeTo:] 4 UIKitCore 0x1c6078bb4 __53-[_UINavigationParallaxTransition animateTransition:]_block_invoke_2 5 UIKitCore 0x1c6b11f60 +[UIView(Animation) performWithoutAnimation:] 6 UIKitCore 0x1c6078630 __53-[_UINavigationParallaxTransition animateTransition:]_block_invoke 7 UIKitCore 0x1c6b1784c …
9 ios  xcode  exception 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.