摘要:
安装了C-Free, 如何调试的时候看到当前的汇编代码 按F9开始进入调试,然后选择C-Free工具栏 中的 “调试”>“控制台”,就可以看到调试的命令窗口,如下 可以看到其实调试用的是gdb这个应用程序,这个在程序在C-Free安装目录下能找到,名字就是gdb.exe。可以通过这个控制台窗口下面的 阅读全文
摘要:
VUE中,子组件是不能直接访问父组件的数据(一般来说,当然如果你要破坏原则也是可以),如下< 上面代码 vm实例挂在了id 为fathercomponent 的DIV中,相当于fathercomponent为一个组件了,这个时候我们在其中定义了一个另一个新组件,这个新定义的组件,和原来的组件,即为父 阅读全文
摘要:
在没有任何前端框架之前,我们写代码,只能用原生的JS,进行数据的处理,DOM的操作,譬如对一个id 为txtName 的文本框进行赋值,我们是这样的 document.getElementById('txtName').value = '张三'。当然这还仅仅是针对通过id获取DOM ,现实开发中还有 阅读全文
摘要:
现代存储器基本存储单元都是以字节为单位, 这样就设立了按字节来编号地址,如000代表0地址,001代表了1地址……,这样一个个按字节为单位的空间组成了整个大的存储器 所谓的按字节都取就是,给第一个地址编号,CPU从存储器相对应的地址编号中读取一个字节的数据。 下面来说下按字读取,字是一个不定大小的存 阅读全文
摘要:
字节:表示8位(比特)数据宽度,存储器一般都是按字节编址的,每8个比特标识一个地址。 字(word):表示16位数据宽度,还有双字(dword)32位,四字(quad word)64位。 字长:表示处理器单次处理的数据宽度,通常跟寄存器的宽度有关。 阅读全文
摘要:
为了提高查询查询效率,我们通常习惯对表建索引,索引分为聚集索引和非聚集索引,它们都是一种B树型的存储结构。如果一个表没有聚集索引,那么它是以堆的方式存储,也就是表中的数据没什么顺序的。否则假如我们为表创建了聚集索引,那么其存储是有顺序的。其实有创建了聚集索引的表,数据表本身也是索引,只是作为叶子节点存在。创建非聚集索引不会影响表的存储方式,换句话说,表还是以堆的方式存储。创建非聚集索引的时候,多个书签列,这个书签列的值,是由表是否有聚集索引决定的。如果表中有聚集索引,那么书签值是聚集索引的键值,当按索引查找的时候,会先找到该索引行,然后再通过该索引行存储的键值去查找表中的数据。如果表中没有聚集 阅读全文
摘要:
创建对象的时候会调用构造函数初始化实例信息,当然析构函数就是释放对象时做的一些释放操作。为什么需要析构函数,普遍来说,因为我们的对象中可能用到了一些非托管的代码,譬如数据库操作,网络,本地文件等等,这些资源不是托管的,所以需要我们的托管对象在销毁时同事释放那些之前使用到的非托管对象,否则一直未关闭,释放,就可能导致泄漏。如果你的对象中根本没用到这些非托管资源,那么请不要定义析构函数,毕竟有代价的。1、析构函数被编译后,实际变成了Finalize()方法,所以实际上C#中也不允许你自己定义一个Finalize方法2、.NET中的托管对象回收,都是通过垃圾回收机制来实现的,不用我们手动就释放。当C 阅读全文
摘要:
委托时一种特殊的类型,它用来保存方法的地址,这样我们很方便的调用方法,像变量一样传递,回调。C++中的函数指针也是保存方法的地址,但是有一点不一样的是定义委托的时候就知道了它里面可以保存什么样的方法,而函数指针就没有这些所以委托相对更明确一点,更安全一点。public delegate void MyDelegate(int x) //这样的委托类型表示,该委托可以用来保存无返回值,切参数为int类型的方法当然当我们写出上面那段代码的时候,实际上编译器做了其他一些事,实际可能定义像下面这样的public class MyDelegate:system.MusticastDelegate{ .. 阅读全文
摘要:
当我们定义一个事件的时候,默认会多出两个方法,分别是添加,和删除的方法譬如public event EventHander myEvent //我定义了这么一个事件//那么实际上IL中会多出2个方法,大概是下面这样的private event EventHander myEvent;// 原来的public 变为privatepublic void add_myEvent(EventHander value){ myEvent = (EventHander)Delegate.Combine(myEvent,value)}public void remove_myEvent(EventH... 阅读全文
摘要:
两个自定义的类别,通常不允许相加,不过我们可以重载+号操作符来方便其相加 class Program { static void Main(string[] args) { A a = new A(); a.x = 1; B b = new B(); b.y = 2; A c = a + b;//因为重载了加号操作符,所以这里可以直接相加 Console.WriteLine(c.x);//4 ... 阅读全文