C#的优点:
1,不会有运行时崩溃,解决了C++的痛点一,难预防,难查错
2,使用文件不需要包含进来,只需要using namespace即可,解决了C++的痛点二,包含复杂,路径复杂,编译复杂
3,编译速度极快,解决了C++的痛点三
4,库代码易懂,智能提示好。
std::map<int, <error-type>, std::less<int>, std::allocator<std::pair<const int, <error-type>>>>

5,对于中小应用极其方便,因为内存托管
6,完善,丰富,易用,高效的各种功能库:线程,网络,数据库,窗口编程库
7,强大的语言新特性:lambda,委托,正则,局部函数,闭包,linq,
6,简洁,易用,功能全,开发效率高,是生产利器
7,有U3D光环加成,微软亲儿子,非常适合用于游戏开发,兼具了运行效率与开发效率,兼合了C++,LUA的功能

readonly : 运行时常量,仅能在定义时初始化或在构造函数中被初始化,
它仅指对象本身不能被改变,但对象内部数据可以被改变,这是不同于C++常引用的地方,C#没有常引用类似的功能
const: 编译时常量

as 与强制类型转换:
as 只能用在类或结构上,有父子关系
as 要比强制类型转换安全,效率高。为什么效率高?try-catch

如何比较两个变量的内存地址是否相同? referenceEquals

静态构造函数,
1,在类的静态变量第一次被使用时调用。
2,不能直接被调用
3,静态构造函数必须无参

静态构造函数机制实现线程安全的单例:
//方式一,
public static CSingleTest inst;
static CSingleTest()
{
inst = new CSingleTest();
}
CSingleTest()//这里有什么用???
{
Console.WriteLine("constructor");
}

//方式二
public static CSingleTest inst = new CSingleTest();
static CSingleTest()
{
Console.WriteLine("static constructor");
}
CSingleTest()//这里有什么用???
{
Console.WriteLine("constructor");
}

线程同步机制:对象锁

class safetySingletonByLock
{
object _lock = new object();
public static safetySingletonByLock inst;
safetySingletonByLock()
{
if(null == inst)
{
lock (_lock)
{
if (null == inst)
inst = new safetySingletonByLock();
}
}
}
}

结构体相等比较,默认情况下是如何比较的??? 内容对比,如何验证? 随着数据复杂性提升而变慢,而引用类型则不会这样
为什么不是地址比较???? 值类型

构造函数可以被主动调用
子类的每个构造函数默认都会调用父类的无参构造函数
一个构造函数最多只能调用一个构造函数,这个被调用的构造函数可以是本类的,父类的

根据以上原理,常见的问题:
1,父类仅有带参构造函数时,子类构造函数必须主动调用父类构造函数
class xbase{
protected xbase(float fx){}
}
class child : xbase {
public float fx;
public xbase() : base(1)//必须调用父类构造函数
,this(2)//error,只能调用一个构造函数
,fx(2); //error, C++初始化列表方式不再支持
{
}
public xbase(float fx){}
}

泛型问题

C# 2018.9.17的更多相关文章

  1. International Programming Retreat Day(2018.11.17)

    时间:2018.11.17地点:北京国华投资大厦

  2. Dell Technology Summit(2018.10.17)

    时间:2018.10.17地点:北京国家会议中心

  3. Intel Digital Innovation Industry Summit(2018.08.17)

    时间:2018.08.17地点:北京金隅喜来登大酒店

  4. 调试大叔V2.1.0(2018.12.17)|http/s接口调试、数据分析程序员辅助开发神器

    2018.12.17 - 调试大叔 V2.1.0*升级http通讯协议版本,完美解决Set-Cookie引起的系列问题:*新增Content-Type编码格式参数,支持保存(解决模拟不同网站或手机请求 ...

  5. 中美贸易战再次开启,世界两极化进程正在加快形成!..... Copyright: 1688澳洲新闻网 Read more at: https://www.1688.com.au/world/international/2018/06/17/369368/

    中美贸易战再次开启,世界两极化进程正在加快形成! https://www.1688.com.au/world/international/2018/06/17/369368/

  6. 2018.12.17 bzoj3667: Rabin-Miller算法(Pollard-rho)

    传送门 Pollard−rhoPollard-rhoPollard−rho板题. 题意简述:给出几个数,让你判断是不是质数,如果不是质数就求出其最大质因子,数的大小为1e181e181e18以内. 先 ...

  7. 2018.12.17 bzoj4802: 欧拉函数(Pollard-rho)

    传送门 Pollard−rhoPollard-rhoPollard−rho模板题. 题意简述:求ϕ(n),n≤1e18\phi(n),n\le 1e18ϕ(n),n≤1e18 先把nnn用Pollar ...

  8. 2018.12.17 hdu2138 How many prime numbers(miller-rbin)

    传送门 miller−rabbinmiller-rabbinmiller−rabbin素数测试的模板题. 实际上miller−rabinmiller-rabinmiller−rabin就是利用费马小定 ...

  9. 2018.4.17 java多线程练习二模拟开场仪式进场

    2.某公司组织年会,会议入场时有两个入口,在入场时每位员工都能获取一张双色球彩票,假设公司有100个员工,利用多线程模拟年会入场过程, 并分别统计每个入口入场的人数,以及每个员工拿到的彩票的号码.线程 ...

  10. 读书笔记-《Maven实战》-2018/4/17

    第五章 坐标和依赖 1.如同笛卡尔坐标系一样,Maven也通过坐标三元素定位一个资源. <groupId>com.dengchengchao.test</groupId> &l ...

随机推荐

  1. [UE4]在AIController中使用行为树

     行为树会在Root根下面的每个子节点中从左右到右来回往复循环执行.

  2. DevExpress GridView删除行

    int[] rows = gridView1.GetSelectedRows(); ) { if (DialogHelper.YesNo(this, "确认删除该记录?", &qu ...

  3. sas transpose 代码备忘

    OPTIONS NOCENTER LS=MAX PS=MAX; LIBNAME S '.\report';/*PROC PRINT DATA=S.doquestionr(WHERE=(sid=1972 ...

  4. CRM 报表中 Filtered 无数据

    数据源设置为以下才可以使用  Filtered+实体名称和  fn_FindBusinessGuid   和 fn_FindUserGuid 

  5. MybatisUtil的使用,便于产生SqlSession

    简化代码,实现一个静态的工具类来实现获取SqlSession 主要有getSqlSessionFactory()和getSqlSession() public class MybatisUtil { ...

  6. matlab 画图参考小程序

    x=0.1:0.1:0.9; a=[41.37,44.34,44.34,44.66,44.66,44.66,98.85,98.85,98.85];%xxxxxx b=[22.10,22.39,22.3 ...

  7. 由echarts想到的js中的时间类型

    在工作中使用echarts时,偶然发现折线图中对时间类型变量的用法: now前面的+号何解? now = new Date(+now + oneDay); 后来查阅资料,看到一篇博客,解释如下:这是对 ...

  8. mac中svn服务器的搭建以及如何在eclipse中使用

    mac自带了svn客户端和服务端功能. 1.查看svn版本 svnserve --version yintingtingdeMacBook-Pro:~ yintingting$ svnserve -- ...

  9. (转)日期类型的input元素设置默认值为当天

    原文地址 html5的form元素对日期时间有丰富的支持 <input type="date"> <input type="time"> ...

  10. 判断B是不是A的子结构

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:我们约定空树不是任意一个树的子结构)   解答: class Solution:    def HasSubtree(self, pRo ...