标签:

进阶

当我们创建 JavaScript 对象时,不论是使用对象字面量语法还是其它别的语法,我们都可以给这些对象添加属性。每一个属性默认会有一个属性描述符。属性描述符就是一个简单的 JavaScript 对象,与目标对象的属性关联起来,包含了该属性的各种信息,比如值value和其它元数据。 在上面的代码中,我们使用字面量语法创建了一个 JavaScript 对象myObj;该对象添加了两个属性myProp ...

0 个评论 1.2K 次阅读

JavaScript 元编程简介

by 豆子

替换《reflect-metadata 包以及 ECMAScript 提案》 按照维基百科的定义: Metaprogramming is a programming technique in which computer programs have the ability to treat other programs as their data. It means that a program ...

0 个评论 1.3K 次阅读

本文我们将学习 TypeScript 的修饰器模式,以及修饰器是如何改变一个类的。同时,我们也将了解到 reflect-metedata 包是如何帮助我们设计修饰器的。 修饰器是一种注解,放置在类声明或类成员变量之前,用来改变类或属性的行为。如果你是 Angular 开发者,那么就会知道定义 Angular 组件的 @Component修饰器。 上面的例子,@Component注解就是一个修饰器, ...

0 个评论 1.3K 次阅读

本文将介绍 reflect-metadata 包。TypeScript 使用这个包设计装饰器 decorator。这个包原本是为了提供Reflect API 的“元数据扩展” ECMAScript 提案的兼容方案。 元数据 metadata,简而言之,就是实际数据的额外信息(译注:通常被称为数据的数据)。例如,如果一个变量表示一个数组,那么,数组的长度就是一个元数据。类似的,数组中的每个元素都是实 ...

0 个评论 1.3K 次阅读

虚继承以及一些技巧

by 豆子

原文出自:http://www.codeproject.com/Tips/1023429/The-Virtual-Inheritance-and-Funny-Tricks 简介 为解决钻石问题,C++ 引入了虚继承,改变了子类调用父类构造函数的方式。这种“副作用”对某些不同寻常的类实现非常有用。 虚继承 虚继承的引入主要是为了解决多继承环境下有歧义的层次组合问题(通常被称为“钻石问题”)。例如,F ...

0 个评论 1.6K 次阅读

之前有朋友问起一个看起来比较“奇怪”的问题,记录如下。因为这个问题豆子也曾经遇到,初学者很有可能感到迷惑。 当时的代码是这样子的: 我们主要关心的是几个toStdString()函数出现的位置。前面两个语句(第2行和第4、5行)看似是一样的行为,其实不然。当你分别运行这两段代码的时候会发现,第一段很可能会出现段错误,第二段却能正常运行。而第一段和第三段又非常类似,不同之处在于前者是直接获得一个ch ...

7 评论 2.1K 次阅读

原文地址:http://blog.davidedmundson.co.uk/node/72 原文作者致力于将 QtQuickControls 运行在 KDE 环境。现在提出一个新的问题:在一个新的工程中,我们应该使用哪种技术?Qt Widgets 还是 QtQuickControls? 注意,本文并不是一个“信达雅”的翻译,而是基于原文的观点添加了很多“作料”。

7 评论 2.1K 次阅读

这篇文章来自于一次讨论:https://www.devbean.net/2013/01/qt-study-road-2-model-view/#comment-17532。关于究竟是在堆上还是在栈上创建对象,可能很多初学者感到迷惑。我想可以把这部分内容拿出来详细介绍一下。现在,假设你已经清楚什么是堆,什么是栈。

6 评论 1.9K 次阅读

参考链接:http://www.pixelstech.net/article/1390482950-do-%7B-%7D-while-%280%29-in-macros 虽然我们不建议使用宏,但是,作为一个语言特性,有时宏是不可避免的。对于这种情况,正确使用宏尤其重要。它可以帮助你减少很多重复性工作。但是,如果你没有仔细地定义,宏绝对能把你逼疯。在很多 C/C++ 程序中,你会看到类似如下定义的宏 ...

2 评论 1.8K 次阅读

前面几章我们介绍了如何对数据库进行操作以及如何使用图形界面展示数据库数据。本章我们将介绍如何对数据库的数据进行编辑。当然,我们可以选择直接使用 SQL 语句进行更新,这一点同前面所说的 model/view 的编辑没有什么区别。除此之外,Qt 还为图形界面提供了更方便的展示并编辑的功能。

13 评论 2.3K 次阅读

关于我

devbean

devbean

豆子,生于山东,定居南京。毕业于山东大学软件工程专业。软件工程师,主要关注于 Qt、Angular 等界面技术。

主题 Salodad 由 PenciDesign 提供 | 静态文件存储由又拍云存储提供 | 苏ICP备13027999号-2