首页 > TAG信息列表 > 对象模型

C# 中的序列化与反序列化(.NET icode9源码学习)

假如有一天我们要在在淘宝上买桌子,桌子这种很不规则不东西,该怎么从一个城市运输到另一个城市,这时候一般都会把它拆掉成板子,再装到箱子里面,就可以快递寄出去了。这个过程就类似我们的序列化的过程(把数据转化为可以存储或者传输的形式)。当买家收到货后,就需要自己把这些板子组装成桌子

C++初阶(运算符重载汇总+实例)

运算重载符概念: 运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数列表,其返回值类型与参数列表与普通的函数类似。函数原型:返回值 operator操作符(参数列表)注意: 运算符重载,就是对已有的运算符重新进行定义,赋予其另外一种功能,以适应不同的数据类型 不能通过重载操

使用icode9重学c#系列——委托和匿名函数

前言简单介绍一下什么是委托。正文以前也写过委托,这次算是重新归档,和新的补充吧。有些人说委托是函数指针的包装,也有些人说委托是一个方法或多个方法的引用。这都是没有问题,委托是一个概念,微软官方文档说委托是一种引用类型,表示对具有特定参数列表和返回类型的方法引用。我觉得太啰

C++ 炼气期之结构体

1. 前言随着计算机向着不同领域的延伸,数据的概念已经不仅局限于数值型数据,计算机需要处理大量的非数值、且复杂的类型数据。为了能抽象地描述这些非数值、复杂类型的数据,C++引入了复合数据类型的概念。C++数据类型分基本(原生)数据类型和复合数据类型,结构体就是一种复合数据类型。可

C++ 练气期之函数探幽

1. 函数基础一个C++程序中,往往需要包含若干个函数,可以说函数是C++程序的基础组成元件,是程序中的头等公民。如果要理解程序中使用函数的具体意义,则需要了解语言发展过程中致力要解决的 2 问题: 一是完善语言的内置功能库(API),让开发者不为通用功能所干扰。 另就是通过特定的代码组织

Java阻塞队列中的异类,SynchronousQueue底层实现原理剖析

1. SynchronousQueue用法先看一个SynchronousQueue的简单用例:/** * @author 一灯架构 * @apiNote SynchronousQueue示例 **/public class SynchronousQueueDemo { public static void main(String[] args) throws InterruptedException { // 1. 创建SynchronousQueue队列

Spring Boot 多数据源配置

1.1. 手动切换数据源application.properties# Order# 如果用Druid作为数据源,应该用url属性,而不是jdbc-urlspring.datasource.order.jdbc-url=jdbc:mysql://localhost:3306/order?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&useSSL=falsespring.datasource.ord

C++初阶(stack+queue)

stackstack介绍stack是一种先进后出的数据结构,只有一个出口,类似于栈。stack容器哦允许新增元素,移除元素,取得栈顶元素,但是除了最顶端之后,没有任何其他办法可以存取stack的其他元素,换句话说,stack不允许有遍历的行为。元素推入栈的操作称为:push 元素推出栈的操作称为:pop概述 数据结构:

JDK动态代理深入剖析

1 基于接口的代理模式什么是代理?简单来说,代理是指一个对象代替另一个对象去做某些事情。例如,对于每个程序员来说,他都有编程的能力:interface Programmable { void developSoftware();}对于Java程序员,他会编写Java代码:class JavaProgrammer implements Programmable { @Overrid

你认识的C# foreach语法糖,真的是全部吗?

本文的知识点其实由golang知名的for循环陷阱发散而来, 对应到我的主力语言C#, 其实牵涉到闭包、foreach。为了便于理解,我重新组织了语言,以倒叙结构行文。先给大家提炼出一个C#题:观察for、foreach闭包的差异左边输出 5个5; 右边输出0,1,2,3,4, 答对的可以不用看下文了。闭包是在词法环境

C++初阶(vector容器+模拟实现)

C++为每种容器类型定义了一种名为const_iterator的类型,该类型只能用于读取容器内的元素,但不能改变其值。 对const_iterator类型解引用,得到的是一个指向const对象的引用。for (vector<string>::const_iterator iter = text.begin(); iter != text.end(); ++ iter){ cout <<

C语言实现staque结构

1. 代码说明功能staque结构以单链表方式实现,结合了stack与queue结构:pop_front+push_front使用方式为stack;pop_front+push_back使用方式是queue。除此之外还提供任意位置的插入、删除、访问和获取索引函数,但执行效率不高。没有提供拷贝复制函数,因为涉及深浅拷贝问题,建议用迭代器自行

C++对象模型:g++的实现(三)

这里所谓类的成员变量指针就是指绑定某个类的某个成员变量的指针,而不是某个对象的某个成员变量的指针,下面展现了两者的不同: // test14.cpp #include <cstdio> struct Test { char c; short s; int i;

C++对象模型:g++的实现(四)

1. C++类中各种成员函数1.1 非静态(非static)、非虚(非virtual)成员函数这是最常规的一种成员函数,必须通过其绑定的对象或指针调用。 // test20.cpp #include <cstdio> class Test20 { public: explicit Test