编程面试题

C#-垃圾回收机制

什么是GC 垃圾回收器帮助你管理应用程序内存的分配和释放,自动内存管理可避免内存泄漏,或者重复释放内存。 什么时候将发生垃圾回收 1、系统具有较低的物理内存; 2、托管堆上对象占用…

C#中常量和只读有什么区别?

常量:使用const关键字修饰,常量值在整个程序中是相同的,或者换句话说,一旦常量字段被分配,该字段的值就不会改变。 只读:使用readonly关键字修饰,表明你只能在声明变量时或…

什么是 C# 中的装箱和拆箱?

装箱:值类型转换为引用类型; 拆箱:引用类型转换为值类型。

ref 和 out 的区别

ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递。对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别。 总结起来,他们有如下语…

什么是继承?C# 支持多重继承吗?C#如何实现多重继承?

什么是继承? 它是 C# 中允许一个类继承另一个类的特性(字段和方法)的机制,是面向对象(封装,继承,多态)的一个特征。 C# 支持多重继承吗? 多重继承:一个类从两个或多个基类派…

Qt的信号量和槽?

所谓信号槽,实际就是观察者模式。当某个事件发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号(signal),这种发出是没有目的的,类似广播。如果有对象对这个信号感兴趣…

简述 private、 protected、 public、internal 修饰符的访问权限

private:私有成员,在类的内部可以访问; protected:保护成员,该类的内部和子类可以访问; friend:友元,声明friend元素的程序集中的代码可以访问该元素,而…

new和malloc的区别

1.new内存分配失败时,会抛出bac_alloc异常,它不会返回NULL;malloc内存分配失败时会返回NULL。 2.使用new操作符申请内存分配时无需指定内存块的大小,而m…

进程和线程的区别?

1.进程是资源分配的最小单位,线程是任务执行的最小单位。 2.进程有自己独立的内存空间,每开启一个进程,系统就会分配相应的地址空间,建立数据表来维护代码段,数据段,堆栈段。线程共享…

堆和栈的区别?

1)栈 stack 存放函数的参数值、局部变量,由编译器自动分配释放,堆heap,是由new分配的内存块,由应用程序控制,需要程序员手动利用delete释放,如果没有,程序结束后,…

加载更多