草庐IT

try-exception

全部标签

c++ - 如果你在 "we don' t use exceptions”阵营,那么你如何使用标准库?

注:我不是在这里扮演魔鬼的代言人或类似的角色-我只是真的很好奇,因为我自己不在这个营地。标准库中的大多数类型要么具有可以抛出异常的变异函数(例如,如果内存分配失败),要么具有可以抛出异常的非变异函数(例如越界索引访问器)。除此之外,许多自由函数可以抛出异常(例如operatornew和dynamic_cast)。在“我们不使用异常”的背景下,您实际上如何处理这个问题?你想永远不要调用一个可以抛出的函数吗?(我看不出这会如何扩展,所以如果是这种情况,我很想听听您是如何做到这一点的)您是否同意标准库的抛出问题,并且将“我们不使用异常”视为“我们从不从我们的代码中抛出异常,也从不从其他代码中

javascript - 究竟什么会导致 "HIERARCHY_REQUEST_ERR: DOM Exception 3"-Error?

它与jQuery到底有什么关系?我知道该库在内部使用原生javascript函数,但每当出现此类问题时,它到底想做什么? 最佳答案 这意味着您尝试将DOM节点插入到DOM树中它无法进入的位置。我看到的最常见的地方是Safari,它不允许以下内容:document.appendChild(document.createElement('div'));一般来说,这只是一个错误,实际上是这样的:document.body.appendChild(document.createElement('div'));在野外看到的其他原因(从评论中总

exception-handling - Google Go 语言中的异常处理

我想知道...我前段时间读过有关Go的文章,并尝试在其中编写一些东西。我似乎很有趣。但我已经达到handling"exceptions"inthislanguage.我已经阅读了他们的方法,这似乎是合理的。我想知道标准异常方法相对于Go风格的优势是什么?有什么好处和坏处?编辑坦率地说:我不想对异常(exception)进行任何圣战。我只是想知道这种处理错误的方式是否有任何优势?与标准异常相比,这种风格的实际优势是什么?值得怀疑吗? 最佳答案 panic/recover在道德上等同于try/catch异常。存在表面差异(语法)和预期用

exception - Go vs. 中的 panic recover try catch 用其他语言

我刚刚阅读了thispost关于Go中的panic/recover,我不清楚这与其他主流语言中的try/catch有何不同。 最佳答案 panic/recover是功能范围的。这就像说每个函数中只允许一个try/catchblock,并且try必须覆盖整个函数。这使得以与java/python/c#等使用异常相同的方式使用Panic/Recover非常烦人。这是故意的。这也鼓励人们以设计使用的方式使用Panic/Recover。您应该从panic()中恢复(),然后将错误值返回给调用者。

python - 最好 'try' 一些东西并捕获异常或测试是否可以首先避免异常?

我应该测试if某事是否有效,还是只测试try来执行它并捕获异常?是否有任何可靠的文档表明首选一种方法?还有一种方式pythonic?例如,我应该:iflen(my_list)>=4:x=my_list[3]else:x='NO_ABC'或者:try:x=my_list[3]exceptIndexError:x='NO_ABC'一些想法...PEP20说:Errorsshouldneverpasssilently.Unlessexplicitlysilenced.是否应该将使用try而不是if解释为静默传递的错误?如果是这样,您是否通过以这种方式使用它来明确地使其静音,从而使其正常?我不

python - Python中的"Inner exception"(带回溯)?

我的背景是C#,我最近才开始使用Python进行编程。当抛出异常时,我通常希望将其包装在另一个添加更多信息的异常中,同时仍显示完整的堆栈跟踪。在C#中这很容易,但是在Python中我该怎么做呢?例如。在C#中,我会做这样的事情:try{ProcessFile(filePath);}catch(Exceptionex){thrownewApplicationException("Failedtoprocessfile"+filePath,ex);}在Python中我可以做类似的事情:try:ProcessFile(filePath)exceptExceptionase:raiseExce

node.js - 尝试安装 LESS 时出现 "Please try running this command again as Root/Administrator"错误

我正在尝试在我的机器上安装LESS,并且已经安装了Node。但是,当我输入“nodeinstall-gless”时,出现以下错误,不知道该怎么办?FPaulMAC:binpaul$npminstall-glessnpmERR!Error:EACCES,unlink'/usr/local/lib/node_modules/less'npmERR!{[Error:EACCES,unlink'/usr/local/lib/node_modules/less']npmERR!errno:3,npmERR!code:'EACCES',npmERR!path:'/usr/local/lib/nod

python - Django 1.7 抛出 django.core.exceptions.AppRegistryNotReady : Models aren't loaded yet

这是我的Windows系统上的回溯。Traceback(mostrecentcalllast):File"D:\AMD\workspace\steelrumors\manage.py",line9,indjango.setup()File"D:\AMD\Django\django-django-4c85a0d\django\__init__.py",line21,insetupapps.populate(settings.INSTALLED_APPS)File"D:\AMD\Django\django-django-4c85a0d\django\apps\registry.py",li

Python尝试...除了逗号vs 'as' in except

except语句中的','和'as'有什么区别,例如:try:passexceptException,exception:pass和:try:passexceptExceptionasexception:pass第二个语法在2.6中合法吗?它在Windows上的CPython2.6中工作,但cygwin中的2.5解释器提示它无效。如果它们在2.6中都有效,我应该使用哪个? 最佳答案 最终文件是PEP-3110:CatchingExceptions总结:在Python3.x中,需要使用as将异常分配给变量。在Python2.6+中,使

php - 使用 try {} catch {} 与 if {} else {} 相比有什么优势?

我正在从php中的普通mysql切换到PDO,我注意到测试错误的常用方法是使用try/catch组合而不是if/else组合。该方法的优点是什么,我可以使用一个try/catchblock而不是几个嵌套的if/elseblock来处理不同步骤(连接、准备、执行等)的所有错误吗? 最佳答案 我会使用try/catchblock,当通过代码的正常路径应该正常运行时,除非确实有一些异常情况——比如服务器关闭、您的凭据过期或不正确。我不一定会用它来处理非异常错误——比如当前用户没有担任正确的角色。也就是说,当您可以合理地预期并处理非异常情况