拷贝

[.NET][C#] C#中的时间戳

谁说胖子不能爱 提交于 2020-02-10 15:40:44
Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种 时间 表示方式,定义为从 格林威治时间 1970年1月1日0时0分0秒(北京时间1970年1月1日8时0分0秒)起至现在的总毫秒数。 C# 中的 Tick 是100纳秒(ns) 1秒(s) = 1000毫秒(ms) 1毫秒(ms) = 1000微秒(μs) 1微秒(μs) = 1000纳秒(ns) DateTime.Now.Ticks 是公元 0年0月0日0时0分0秒 至当前时区时间的 Tick 数,DateTime.UtcNow.Ticks 是公元 0年0月0日0时0分0秒 至 格林威治时间 (UTC +0)的 Tick 数。 获取时间戳的方式为 (DateTime.UtcNow.Ticks - 621355968000000000) / 10000 , 621355968000000000 是 0年0月0日0时0分0秒 至 1970年1月1日0时0分0秒 的 Tick 数,除以10000是将 Tick 装换为毫秒。 将时间戳转换为 格林威治时间 (UTC +0) DateTime 的方法为: new DateTime( [Unix时间戳] * 10000 + 621355968000000000) 将时间戳转换为本地时间的方法为 new

js继承方式上

喜你入骨 提交于 2020-02-09 18:33:03
转自:https://www.cnblogs.com/zt123123/p/7676633.html js不是传统的面向对象语言,那么他是怎么实现继承的呢?由于js是基于原型链实现的面向对象,所以js主要通过原型链查找来实现继承,主要有两大类实现方式,分为基于构造函数的继承,以及非构造函数的继承。 由于篇幅较长,所以把文章分为上下篇,今天先讲解上半部分。 现在有两个类即构造函数,一个是动物类 function Animal() {     this.species = "动物";   } 一个是猫类 function Cat(name, color) {     this.name = name;     this.color = color;   } 怎样才能使"猫"继承"动物"的特性呢? 一、 构造函数绑定 第一种方法也是最简单的方法,使用call或apply方法,将父对象的构造函数绑定在子对象上,即在子对象构造函数中加一行: function Cat(name, color) {     Animal.apply(this, arguments);     this.name = name;     this.color = color;   }   var cat1 = new Cat("大毛", "黄色");   alert(cat1.species); // 动物 二、

经典面试题:js继承方式下

拜拜、爱过 提交于 2020-02-09 18:31:35
上一篇讲解了构造函数的继承方式,今天来讲非构造函数的继承模式。 一、object()方法 json格式的发明人Douglas Crockford,提出了一个object()函数,可以做到这一点。 function object(o) {     function F() {}     F.prototype = o;     return new F();   } 二、浅拷贝 除了使用"prototype链"以外,还有另一种思路:把父对象的属性,全部拷贝给子对象,也能实现继承。 下面这个函数,就是在做拷贝: function extendCopy(p) {     var c = {};     for(var i in p) {       c[i] = p[i];     }     c.uber = p;     return c;   } 三、深拷贝 所谓"深拷贝",就是能够实现真正意义上的数组和对象的拷贝。它的实现并不难,只要递归调用"浅拷贝"就行了。 function deepCopy(p, c) {     var c = c || {};     for(var i in p) {       if(typeof p[i] === 'object') {         c[i] = (p[i].constructor === Array) ? [] : {};  

Javascript 面向对象二:继承

天大地大妈咪最大 提交于 2020-02-09 18:29:28
现在有一个"动物"对象的构造函数。   function Animal(){     this.species = "动物";   } 还有一个"猫"对象的构造函数。   function Cat(name,color){     this.name = name;     this.color = color;   } 一、 构造函数绑定 第一种方法也是最简单的方法,使用call或apply方法,将父对象的构造函数绑定在子对象上,即在子对象构造函数中加一行:   function Cat(name,color){ Animal.apply(this, arguments);     this.name = name;     this.color = color;   }   var cat1 = new Cat("大毛","黄色");   alert(cat1.species); // 动物 PS:此处要注意方法call与apple的区别与相同之处: 1.都是在特定的作用域中调用函数。 2apply()接收两个参数,一个是函数运行的作用域(this),另一个是参数数组。 call()方法第一个参数与apply()方法相同,但传递给函数的参数必须列举出来。 二、 prototype模式(原型链继承) 第二种方法更常见,使用prototype属性。 如果"猫

javascript面向对象——继承

南楼画角 提交于 2020-02-09 18:11:22
一、 构造函数绑定 先来看下面两个函数的意义: function ClassA(sColor){ this.color=sColor; this.sayColor=function(){ alert(this.color); }; } function ClassB(sColor,sName){ this.newMethod=ClassA; this.newMethod(sColor); delete this.newMethod; this.name=sName; this.sayName=function(){ alert(this.name); }; } 上面代码就是继承的函数里面,新建一个变量newMethod,然后将ClassA的指针指向这个变量,然后在ClassB中调用这个方法,这样实际上newMethod引用的作用域也就是说this的指向就是ClassB实例化的对象了。 注意:最后一行删除对ClassA的引用,这样以后就不能再调用它。所有的新属性和新方法都必须在删除了新方法的代码后定义,否则覆盖超类的相关属性和方法 为证明前边的有效,运行下面例子 var objA=new ClassA("red"); var objB=new ClassB("blue","Nicholas"); objA.sayColor(); objB.sayColor(); objB

复习打卡--0819元类和内存管理

大憨熊 提交于 2020-02-09 04:18:54
一、元类 python2中所有类是基于instance创建的,称为旧式类;注明继承object时,称为新式类; python3中默认均为基于object,无区别; object为所有类的基类,所有的类的继承顶层父类都是object; type为所有类的元类,print(type(类名)),输出type,所有类的类型都是type。所有的类都是type创建出来的; # 使用type动态地创建类 def func1(self): print(self.name) dict1={"name":"lala","age":18,"func":func1()} my=type("Myclass",bases=(object,),dict=dict1) # 第一个参数为:类名,第二个参数为继承的类,第三个参数为类的属性和方法 print(my) # 返回类名Myclass m1=my() print(type(m1)) # 返回类名Myclass m1.func() 二、内存管理 1对象引用 变量:通过变量指针指向具体对象的内存空间,取对象的值; 对象:类型已知,每个对象都包含头部信息(类型标识符和引用计数器); a=10 a这个变量指向10这个对象,10这个对象中包含类型标识符:int和引用计数器:1 b=a b引用a,b实际引用的也是10这个对象,此时,10的引用计数器为:2

ssh链接服务器并且拷贝文件

不打扰是莪最后的温柔 提交于 2020-02-09 02:15:27
1.通过SSH可以远程登录到服务器上,基本的语法是: ssh username@ip 回车以后会提示输入密码,并且需要接受证书。 今天在登录的时候,出现了一个错误提示: ” Remote Host Identification Has Changed“ 每一个SSH服务器都使用的是一个随机的KEY,当SSH被重新安装过以后,这个KEY就发生了变化,但是我们登录的时候,会从本机寻找之前使用过的KEY,这个时候就会出现上面的提示,这种情况大多出现在服务器或者SSH服务被重新安装以后。 解决这个问题的最简单的办法就是删除known-hosts文件,该文件位于~/.ssh/known-hosts 当我们再次登录的时候,会重新创建这个文件,并把新的KEY加到里面去。 在本地的话可能直接 cp 旧文件 新的路径 即可。 拷贝远程服务器的文件到本地,利用scp。 scp就是secure copy,是用来进行远程文件拷贝的,数据传输使用ssh1,并且和ssh1使用相同的认证方式,提供相同的安全保证,与rcp不同的是scp会要求你输入密码,如果需要的话。 最简单的应用如下: scp 本地用户名@IP地址:文件名1 远程用户名@IP地址:文件名2 [本地用户名@IP地址:]可以不输入,可能需要输入远程用户名所对应的密码. 可能有用的几个参数: -v 和大多数linux命令中的-v意思一样,用来显示进度

Windows 下QT程序发布

99封情书 提交于 2020-02-09 01:00:05
方法 1 :利用 QT 自带打包工具 1 、新建文件夹,把编译好的 exe 文件放入该文件夹 2 、使用 QT 下的命令行 3 、进入该 exe 所在文件,执行 windeployqt xxx.exe, 若出现找不到命令的情况 4 、搜索 windeployqt.exe 所在路径,配置环境变量 5 、重启终端,进入 exe 文件所在目录,执行 windeployqt xxx.exe 。完毕。 6 、把整个 xxx.exe 所在目录拷贝到别的电脑,可直接使用。 上面的方法打包出来的程序文件较大 方法 2 : 手动打包 1 、新建文件夹,把编译好的 exe 文件放入该文件夹 2 、拷贝 qt 所需动态库 Qt5Core.dll, Qt5Gui.dll, Qt5Widgets.dll 至 xxx.exe 文件所在目录 3 、拷贝文件夹 platforms ,里面有平台相关动态库 qwindows.dll 4 、运行 xxx.exe 文件,缺少什么 dll 就直接把该 dll 拷贝到 xxx.exe 文件所在目录(可参考 windeployqt 生成的文件) 用第二种方法打包出来的文件会相对小些。 来源: https://www.cnblogs.com/zhonghaijing/p/9807756.html

【linux】【qt5】【将linux下的qt程序打包发布(完全适用于中标麒麟)】

ⅰ亾dé卋堺 提交于 2020-02-09 00:59:31
前言:   最近因项目需求,需要打包linux-qt程序给客户先用一下子。百度一大堆终于找了几个靠谱的来综合一下,留为备用吧。   由于是先遣版所以仅制作为 免安装程序的格式 。 正文:   博主的qt是5.9.2的,程序名称为ocs,下面看到这个名称替换成自己的就是了。   1.先找个地方,比如桌面创建一个名字为OCS的空文件夹用于放打包后的文件。   2.将项目使用Release模式编译并运行一遍(确保生成可执行程序ocs)。   3.打开程序输出目录(生成的那个可执行程序ocs的目录)。     博主的目录是build-ocs-Desktop-Release。   4.在上一部的目录中新建脚本copylib.sh。   5.在copylib.sh中加入一下内容,并通过指令赋值权限sudo chmod 777 copylib.sh。    1 #!/bin/bash 2 3 LibDir=$PWD"/lib" 4 Target=$1 5 6 lib_array=($(ldd $Target | grep -o "/.*" | grep -o "/.*/[^[:space:]]*")) 7 8 $(mkdir $LibDir) 9 10 for Variable in ${lib_array[@]} 11 do 12 cp "$Variable" $LibDir 13 done

Windows电脑多个SSH Key管理.md

自作多情 提交于 2020-02-09 00:06:12
笔者偏在阿里云,Github,开源中国上均存放一些私有项目代码,因此需要再Windows电脑上配置多个SSH Key 环境 操作系统:windows 7 Git 提示: Git 安装后就可以使用 Git bash ,接下来的命令都在 Git bash 中输入和执行 注册好 Github 账号,其中 Email 为 987654321@qq.com 用支付宝/淘宝账号登录 https://code.aliyun.com ,在设置->个人设置页面看到邮箱为 987654321@163.com Github 1.打开 Git bash 2.输入命令 ssh-keygen -t rsa -C "987654321@qq.com" 3.执行结果 4.拷贝公钥 方法一:在 Git Bash 中输入命令拷贝文件内容到剪切板: clip < ~/.ssh/id_rsa_github.pub 方法二:从文件中拷贝 进入 C:\Users\{你的用户名}.ssh\ ,用记事本打开 id_rsa_github.pub ,拷贝文件中所有内容 5.添加复制的公钥到 Github 中 首先,登录 https://www.github.com ,在右上角打开弹出框,选择 Settings 在 SSH and GPG keys 打开 New SSH Key 粘贴剪切板中公钥并 Add SSH Key: 6.在