变量

C++ static

一曲冷凌霜 提交于 2020-03-11 04:04:05
C++ static static 作用 1、修饰普通变量,修改变量的存储区域和生命周期,使变量存储在静态区,在 main 函数运行前就分配了空间,如果有初始值就用初始值初始化它,如果没有初始值系统用默认值初始化它。 2、修饰普通函数,表明函数的作用范围,仅在定义该函数的文件内才能使用。在多人开发项目时,为了防止与他人命名空间里的函数重名,可以将函数定位为 static。 3、修饰成员变量,修饰成员变量使所有的对象只保存一个该变量,而且不需要生成对象就可以访问该成员。 4、修饰成员函数,修饰成员函数使得不需要生成对象就可以访问该函数,但是在 static 函数内不能访问非静态成员。 来源: CSDN 作者: 嫌疑人_X 链接: https://blog.csdn.net/qq_42016124/article/details/104748739

最优化——线性规划之单纯形法

与世无争的帅哥 提交于 2020-03-11 02:52:48
单纯形法(主要参考其它博客) 需要先了解的基本知识:基矩阵,基变量,非基矩阵,非基变量,矩阵分块,逆矩阵,基解,基可行解。 1、这篇讲细致一些(注意:文中IX.解基变量处有个错误,公式推导时是左乘B逆) 点这里 2、这篇简洁明了一些(注意:文中5.1几何意义部分有个错误,说基变量可以用非基变量表示,然后令非基变量为零即可求出基变量的解,应该是选取m个非基变量,写成了选取m个基变量) 点这里 3、这篇极致精简(有一定基础的看 Q∪Q) 点这里 来源: CSDN 作者: 我在人间凑人数 链接: https://blog.csdn.net/weixin_43901214/article/details/104756239

概述

爷,独闯天下 提交于 2020-03-11 02:50:41
在预测模型构建方面,由于影响电力负荷变化的因素具有高度的随机性,电力负荷变化也具有较高的随机性,增加了负荷预测的难度。 现有的负荷预测模型可分为三大类:经典预测模型、人工智能预测模型和机器学习预测模型 。经典的预测模型主要包括回归分析和时间序列方法。文献[5]提出了一种多 元线性回归(MLR) 方法。该方法以趋势、温度、周日等变量为基本变量,构造了更多的二阶温度、三阶温度等组合变量。然后利用这些变量训练再结晶模型。在[6]中,提出了一种 时间序列方法 ,其中考虑外生变量,构造了具有广义自回归条件和特征成分的模型。从而避免了传统时间序列模型忽略外部影响因素的缺陷。这些经典预测模型属于线性预测方法,结构简单,预测速度快。然而,对于非线性负荷,这些线性预测方法很难提高预测精度。人工智能预测的主要模型是 神经网络(NN) [7],[8],它包括 反向传播神经网络(BPNN )和 极端学习机(ELM) 。神经网络具有很强的非线性逼近能力和自学习能力,但网络参数的选择比较困难。虽然ELM可以解决这个问题,但它是不稳定的。机器学习预测模型主要包括 最小二乘支持向量机(LSSVM) [9]、 随机森林(RF)[8]和梯度增强回归树(GBRT) [8]、[10]。LSSVM是支持向量机的一种扩展,它克服了支持向量机的缺点,降低了计算复杂度,提高了求解速度。LSSVM对大负载增长仍然有效。然而

Java基础--面向对象_final关键字、常量

此生再无相见时 提交于 2020-03-11 02:33:09
final可以修饰变量、方法和类 final修饰的类无法继承 final修饰的方法无法重写,无法覆盖 final修饰的变量,只能赋一次值,不能重新赋值 1.final修饰引用 引用也是变量,final修饰的引用,指向的内存地址(对象)不能再改变,无法再指向其他对象,也无法赋值null。 final指向的对象不会被垃圾回收器回收,直到当前方法结束后,才会释放空间 final指向的对象的内部数据可以修改 2.final修饰实例变量 final修饰的实例变量,系统不赋默认值,程序员必须手动赋值。普通的实例变量在创建对象的时候会默认赋值(例1) final修饰的实例变量,一般添加static修饰(例2)。static final修饰的变量称为“常量”。 常量 :常量名建议全部大写,单词间用下划线连接。 常量的值不能变。常量和静态变量都存储在方法区,在类加载时初始化。用 类名. 就可以调用。 常量一般是public公开的 //例1 //赋值方法一 final double height = 1.8 ; //赋值方法二 final double weight ; public User ( ) { //系统赋默认值是在这个时候,所以在这时赋值也可以 this . weight = 80 ; } //例2 class Chinese { String idCard ; String name ;

编程命名规则

落花浮王杯 提交于 2020-03-11 02:30:12
变量的命名规则要求用“匈牙利法”,即开头字母用变量的类型,其余部分用变量的英文意思、英文的缩写、中文全拼或中文全拼的缩写,要求单词的第一个字母应大写。即: 变量名=作用域前缀+变量类型+变量的英文意思(或英文缩写、中文全拼、中文全拼缩写)。对非通用的变量,在定义时加入注释说明,变量定义尽量可能放在函数的开始处。 作用域前缀标明一个变量的可见范围。作用域可以有如下几种: 前缀 说明 无 局部变量 m_ 类成员变量(member) sm_ 静态类成员变量(static member) g_ 全局变量(global) s_ 静态变量(static) sg_ 静态全局变量(static gloabl) gg_ 进程间共享的共享数据段全局变量(global global) c_ 常量变量(const) 类型前缀标明一个变量的类型,可以有如下几种: 前缀 说明 i 整数类型int n 短整数类型short int l 长整数类型long int c 字符类型char b 布尔型变量bool f 单浮点型变量float d 爽浮点型变量double by 无符号字符unsigned char w 无符号整型unsigned int(WORD) s 字符串string sz 用0结尾的字符串 p 指针变量,同理pp代表二重指针pointer 变量的英文意思,一般采用动词+宾语,或者形容词

Java 静态变量和静态方法

故事扮演 提交于 2020-03-11 01:06:06
在类中,使用 static 修饰符修饰的属性(成员变量)称为静态变量,也可以称为类变量,常量称为静态常量,方法称为静态方法或类方法,它们统称为静态成员,归整个类所有。 静态成员不依赖于类的特定实例,被类的所有实例共享,就是说 static 修饰的方法或者变量不需要依赖于对象来进行访问,只要这个类被加载,Java 虚拟机就可以根据类名找到它们。 调用静态成员的语法形式如下: 类名 . 静态成员 注意 : static 修饰的成员变量和方法,从属于类。 普通变量和方法从属于对象。 静态方法不能调用非静态成员,编译会报错。 静态变量 类的成员变量可以分为以下两种: 1 . 静态变量(或称为类变量),指被 static 修饰的成员变量。 2 . 实例变量,指没有被 static 修饰的成员变量。 静态变量与实例变量的区别如下: 1 静态变量 运行时,Java 虚拟机只为静态变量分配一次内存,在加载类的过程中完成静态变量的内存分配。 在类的内部,可以在任何方法内直接访问静态变量。 在其他类中,可以通过类名访问该类中的静态变量。 2 实例变量 每创建一个实例,Java 虚拟机就会为实例变量分配一次内存。 在类的内部,可以在非静态方法中直接访问实例变量。 在本类的静态方法或其他类中则需要通过类的实例对象进行访问。 静态变量在类中的作用如下: 1 . 静态变量可以被类的所有实例共享

变量和简单的数据类型

痴心易碎 提交于 2020-03-10 23:19:38
一、安装ipython C:\WINDOWS\system32>pip3 install ipython C:\WINDOWS\system32>pip3 list //查看一下 C:\WINDOWS\system32>python -m pip install --upgrade pip //更新下载源 C:\WINDOWS\system32>python -m pip install --upgrade pip -i https://pypi.douban.com/simple //更新下载源(比上面的快) C:\WINDOWS\system32>pip3 install -i https://pypi.douban.com/simple ipython //安装ipython C:\WINDOWS\system32>pip3 install -i https://pypi.douban.com/simple jupyte //安装jupyte 创建一个目录 C:\WINDOWS\system32>jupyter notebook //启动编辑器jupyter 按住shift键右击选择cmd窗口 二、变量和简单的数据类型 一、变量 C:\WINDOWS\system32>jupyter notebook //启动编辑器jupyter,会自动跳到默认浏览器或让你选择一个浏览器。

ES6的解构赋值

混江龙づ霸主 提交于 2020-03-10 21:57:03
ES6解构:es6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称之为解构。 解构赋值是对赋值运算符的扩展。 他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。 在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。 解构模型 在解构中,有下面两部分参与: 1.解构的源,解构赋值表达式的右边部分。 2.解构的目标,解构赋值表达式的左边部分。 解构赋值 1.数组的解构赋值 var [a,b,c] = [1,2,3]; console.log(a);//1 console.log(b);//2 console.log(c);//3 //本质上这种写法属于‘模式匹配‘,只要等号两边的模式相同,左边的变量就会被赋予对应的值 let [foo,[bar]] = ["111",["abc"]]; console.log(bar); //abc let [, ,third] = ["foo","bar","baz"]; console.log(third); //baz let [x,y,z] = ['hah']; console.log(y); //undefined //如果解构不成功,变量的值就等于undefined 解构一般有三种情况,完全解构,不完全解构,解构不成功,在上述例子中存在完全解构和解构不成功的例子,下面来看一下不完全解构的例子

emmm......就当练习了系列03

蹲街弑〆低调 提交于 2020-03-10 19:42:00
写代码,有如下变量,请按照要求实现每个功能 1) 移除 name 变量对应的值两边的空格,并输出处理结果 name = ' lucky ' print(name.strip(' ')) 2) 判断 name 变量对应的值是否以 "al" 开头,并输出结果
 name = 'lucky' print(name.startswith('al')) 3) 判断 name 变量对应的值是否以 "X" 结尾,并输出结果
 name = 'lucky' print(name.endwith('al')) 4) 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果 name = 'lucky' print(name.replace('l','p')) 5) 将 name 变量对应的值根据 “l” 分割,并输出结果 name = 'lucky|alex|egon' print(name.split('|', 1)) 6) 将 name 变量对应的值变大写,并输出结果
 name = 'lucky' print(name.upper()) 7) 将 name 变量对应的值变小写,并输出结果
 name = 'LUCKY' print(name.lower()) 8) 请输出 name 变量对应的值的第 2 个字符? name = 'lucky' print(name[1]) 9)

JavaScript里面判断空字符串用==null和==""是不同的

限于喜欢 提交于 2020-03-10 19:35:55
根据我们以往的经验,一般会以为==null和==""是相同的,呜呜,在这上面我耗了好久QAQ,后来大佬提醒不能用null来判断为空值,查了一下才知道。 下面是百度的回答: js中的null代表不存在,在某些情况下和undefined定义一样,根本区别在于变量是否已经赋值,即是否已经初始化。 这里要清楚: null是个object类型,且值只有null;undefined是个undefined类型 ,值只有undefined。而"“是个String类型的值,如果一个变量申明了未赋值,则类型未定义,这里判断变量==null会返回true, null==undefined返回true null===undefined返回false null==”“返回false undefined==”"返回false 一般判断的使用: 获取的 文本 使用 变量==""; 判断是否为空 获取的 对象 使用 **变量==null;**判断是否为空 JAVA里面判断字符 的两边“值”是否相等 是使用equals.() 如果使用 “==”来判断 是判断两边的引用 来源: CSDN 作者: ChanCherry、 链接: https://blog.csdn.net/ITmincherry/article/details/104774064