Qt Quick 技术的引入,使得你能够快速构建 UI ,具有动画、各种绚丽效果的 UI 都不在话下。但它不是万能的,也有很多局限性,原来 Qt 的一些技术,比如低阶的网络编程如 QTcpSocket ,多线程等等,在 QML 中要么不可用,要么用起来不方便,所以呢,很多时候我们是会基于这样的原则来混合使用 QML 和 C++: QML 构建界面, C++ 实现非界面的业务逻辑和复杂运算。
2025年02月11日
Qt Quick 技术的引入,使得你能够快速构建 UI ,具有动画、各种绚丽效果的 UI 都不在话下。但它不是万能的,也有很多局限性,原来 Qt 的一些技术,比如低阶的网络编程如 QTcpSocket ,多线程等等,在 QML 中要么不可用,要么用起来不方便,所以呢,很多时候我们是会基于这样的原则来混合使用 QML 和 C++: QML 构建界面, C++ 实现非界面的业务逻辑和复杂运算。
2025年02月11日
如你所知,Java是一门面向对象的编程语言。我们平常在写代码的时候也是在不停的操作各种对象,那么当你在写出User user = new User();这样一行代码的时候,JVM都做了些什么呢?
2025年02月11日
2025年02月11日
按理说自己 new 出来的对象和容器是没有关系的,但是在 Spring Security 框架中也 new 了很多对象出来,一样也可以被容器管理,那么它是怎么做到的?
今天来和大家聊一个略微冷门的话题,Spring Security 中的 ObjectPostProcessor 到底是干嘛用的?
本文是 Spring Security 系列第 32 篇,阅读前面文章有助于更好的理解本文:
2025年02月11日
单例模式是指:确保一个类只有一个实例,并提供一个全局访问点来访问这个唯一实例。在实际的开发中,会经常遇到一个类只能创建一个对象。如果有多个对象,可能会导致状态的混乱。这种情况下,单例模式是最恰当的解决方法。例如多个进程都想调用打印机接口打印数据,这时只能创建一个打印机实例;如果不同的进程都创建独自的打印机实例,最终会出现打印任务冲突问题。通过单例模式可以做到:
2025年02月11日
I、保持语言的稳定性和兼容性” 总结:主要是utf8字符串,虚函数override/final支持。 1、c++11宏和类型(考虑和c99兼容):STDC_HOSTED、STDC、__VA_ARGS__宏可以替代...、__cplusplus宏用于c和c++混编,非布尔值还可以判断是否支持c++ 11;_Pragma操作符。 long long 64bit类型, static_assert用于编译时警告,表达式必须是常量。string都是utf-8类型的,可以和utf-16,char*等转换。可用sizeof(类::非静态成员)获取成员大小。 2、面向对象语言特性完善:虚函数override/final支持;增加非静态成员变量就地初始化=和{}符号;noexcept函数声明没有异常抛出,如果抛出了则用std::terminate()来终止程序; 3、完善拓展模板语法:friend FriendClass就可以声明友元,模板中也可使用;模板函数也支持了默认参数;显式模板实例化和外部模板声明优化链接;匿名和局部的类/结构体等,都可以作为模板实参。
2025年02月11日
了解你所使用的编程语言究竟是如何实现的,对于C++程序员可能特别有意义。首先,它可以去除我们对于所使用语言的神秘感,使我们不至于对于编译器干的活感到完全不可思议;尤其重要的是,它使我们在Debug和使用语言高级特性的时候,有更多的把握。当需要提高代码效率的时候,这些知识也能够很好地帮助我们。