当前位置: 首页 > wzjs >正文

网站开发教程 视频教程百度网页版浏览器网址

网站开发教程 视频教程,百度网页版浏览器网址,去掉wordpress标题中竖线,建设银行网站登陆二星是什么意思在 Java 和 C# 中,finally 是一个与异常处理(try-catch)配合使用的关键字,用于确保一段代码无论是否发生异常都会被执行。它通常用于释放资源(如文件句柄、数据库连接、锁等),避免内存泄漏或状态…

在 Java 和 C# 中,finally 是一个与异常处理(try-catch)配合使用的关键字,用于确保一段代码无论是否发生异常都会被执行。它通常用于释放资源(如文件句柄、数据库连接、锁等),避免内存泄漏或状态不一致。

C++ 没有直接的 finally 关键字,但可以通过以下几种方式实现类似的功能,确保资源释放或清理代码无论是否发生异常都会执行

例如:

/// <summary>
/// 模拟Java C#中的Finally,用法:
///		Finally f([](){
///			std::cout << "最后执行的代码。\n";
///		});
///	注意:不能这样用:
///		Finally([](){
///			std::cout << "会马上执行的代码。\n";
///		} 
/// 用法2:
/// 	auto n = [] { std::cout << "执行代码。\n"; };/// 
///		finally f(std::move(n));
/// 最好在函数声明变量后,同时声明 Finally对象。
/// </summary>
/// 创建时间:2024-08-13    最后一次修改时间:2025-04-20
template <typename Fun>
class finally {
private:Fun _f;
public:finally() = delete;finally(const finally&) = delete;/// <summary>/// 5. 总结/// 方法	行为	适用场景/// 	_f(f)	总是拷贝	简单情况,但低效/// 	_f(std::move(f))	强制移动	确定要移动时/// 	_f(std::forward<F>(f))	完美转发	泛型代码(推荐)/// 	关键点/// 	std::move:强制转成右值(用于移动语义)。/// /// 	std::forward:保持值类别(用于泛型编程,完美转发)。/// /// 	在模板构造函数或工厂函数中,优先使用 std::forward 实现最高效的参数传递。/// </summary>/// <typeparam name="F"></typeparam>/// <param name="f"></param>	finally(Fun&& f) : _f(std::forward<Fun>(f)) {}~finally() { _f(); }
};

例子1:

int main(int argc, char* argv[])
{	 auto* p = new int(10);_Finally f([]() {delete[] p;std::cout << "资源释放\n";});//..............................}

输出:

_Finally时候非常有用,因为你在处理问题时可能遇到一个函数几百行

代码,有非常多的返回分支,如果不用_Finally,每个返回分支都可能

要小心加上恢复控制状态的代码, 例如,QTextEdit的键盘事件,

QTreeWidget鼠标事件等等。

    m_tree->blockSignals(true);  //临时阻止树型控件发错信号lf::_Finally f([this]() {   m_tree->blockSignals(false);  //允许发错信号});

http://www.dtcms.com/wzjs/556277.html

相关文章:

  • 社区论坛网站建设做电影网站需要什么条件
  • 全球做的最好的公司网站自己建网站免费
  • 网站建设 价格低杭州优化外包哪里好
  • 网站能获取访问者页面设计考试题
  • 建设电子商务网站需要什么设备做网站什么价位
  • 建设厅网站修改密码ui设计作品解析
  • 朋友让帮忙做网站关于机场建设的网站
  • 用华为云建立Wordpress网站开发公司工程部经理述职报告
  • 做网站的详细教程网页系统升级中每天自动更新
  • 域名访问网站的知识软装设计师培训
  • 网站刚刚开始怎么做中国建设银行网站的机构
  • 教育发展基金会网站建设张店网站建设价
  • 网站排行榜上升代码网站开发证书
  • 网站是不是用cms做的郑州大型网站
  • 哪个协会要做网站建设啊软件开发工程师简历模板
  • 济宁网站建设服务企业网站模板下载选哪家
  • 什么样的网站需要认证南昌建设人才网站
  • 有没有代做课程设计的网站南京网站设计开发
  • 深圳品牌学校网站建设织梦贷款网站模板
  • 怎样建设公司的网站php电商网站开发流程图
  • 个人网站赏析濮阳网站建设网站
  • 网站站长是什么做食品研发都有哪些网站
  • 六盘水南宁网站建设手机怎么做网站卖东西
  • 凡科建站源码wordpress文章延迟加载
  • 做网站需要的技能网站建设论文的前言
  • 兰州网站建设q479185700強大连线上教学
  • 优秀交互设计网站赣州销售网站
  • 垂直门户网站内江市建设信息网站
  • 做网站广告软件世界杯最新排名
  • 黑龙江省网站前置审批网站wordpress带轮播企业站主题