初始化

static关键字

泪湿孤枕 提交于 2020-02-24 00:10:20
http://hi.baidu.com/helfen/blog/item/d6d208dba1d1146ed0164e29.html // C++ static 类的静态成员函数 #include <iostream.h> class ok { int a; static int s;//声明静态数据成员 public: ok(int a); static void show();//声明静态成员函数 }; int ok::s=0;//定义并初始化静态数据成员 ok::ok(int a) { this->a=a; s+=a; //非静态成员函数可以访问静态数据成员 } void ok::show() //静态成员函数的实现 { //cout<<a<<endl; //错误代码,a是非静态数据成员 cout<<"s="<<s<<endl; } void main() { ok cat(2); cat.show(); ok dog(3); dog.show(); ok::show(); } /*------------------------------------------------------------ ○静态成员之间可以相互访问,如静态成员函数访问静态数据成员和静态成员函数; ○静态成员函数没有this指针。无法访问属于类对象的非静态数据成员和非静态成员函数,

java面向对象入门(3)-java构造方法

烂漫一生 提交于 2020-02-24 00:00:09
Java构造函数 是特殊的方法(没有返回类型),使您可以在应用程序内部的其他类使用对象之前完全初始化对象状态。Java中的构造方法是使用 new 关键字调用的。 下面让我们更深入地了解构造函数。 1.什么是java构造函数 构造函数是一种特殊的方法,类似于(没有确切的方法)构造,它可以帮助程序员在对象可被应用程序中的其他对象使用之前编写对象初始化代码。 每当应用程序需要任何类的新实例时,JVM就会在堆内部分配一个内存区域。然后,JVM执行调用的构造函数(类可以具有多个构造函数)并初始化对象状态。在构造函数内部,您可以访问所有对象属性,并将它们分配给它们的默认值或任何所需的值。 2.构造函数类型 2.1.默认构造函数(无参数构造函数) 如果程序员在类定义中不提供任何构造函数,则JVM在运行时为该类提供默认构造函数。 程序员还可以覆盖类中的默认构造函数。让我们看一下语法。 public class Employee { public Employee() { } } 在默认构造函数中,构造函数的名称必须与类名称匹配,并且不应具有任何参数。 2.2通过构造函数重载进行参数化构造函数 如上所述,一个类中可以有多个构造函数。这可以通过重载构造函数来实现。在 构造函数重载中 ,您可以根据要求传递参数列表,即可以初始化类的数量。 public class Employee { private

素数筛专题精讲

自作多情 提交于 2020-02-23 22:52:18
素数筛 筛法的思想是去除要求范围内所有的合数,剩下的就是素数 了,而任何合数都可以表示为素数的乘积,因此如果已知一 个数为素数,则它的倍数都为合数。 事前需知: 1.sizeof和strlen的区别 strlen计算字符串的长度,以’\0’为字符串结束标志 sizeof是分配的数组实际所占的内存空间大小,不受里面存储内容 2.每种类型的变量都有各自的初始化方法,memset() 函数可以说是初始化内存的“万能函数”,通常为新申请的内存进行初始化工作。它是直接操作内存空间,mem即“内存”(memory)的意思。该函数的原型为: # include <string.h> void * memset ( void * s , int c , unsigned long n ) ; memset() 函数函数的功能是:将指针变量 s 所指向的前 n 字节的内存单元用一个“整数” c 替换,注意 c 是 int 型。s 是 void* 型的指针变量,所以它可以为任何类型的数据进行初始化。 一.复杂度:nlogn long long su [ max ] , cnt ; bool isprime [ max ] ; void prime ( ) { cnt = 1 ; memset ( isprime , 1 , sizeof ( isprime ) ) ; //初始化认为所以数都是素数

React组件的生命周期理解

我只是一个虾纸丫 提交于 2020-02-23 15:11:54
React组件的生命周期理解 React组件的生命周期分为初始化,更新,销毁,错误处理四个阶段,每一个阶段又有若干个函数以响应不同的阶段。 生命周期函数图解: 初始化阶段的钩子函数 在组件初始化阶段会执行 1. constructor React类组件的构造函数在挂载之前被调用。在constructor构造函数中,先调用super(props),将父组件传来的props绑定,在此函数中可以初始化state,将事件处理函数绑定到类实例上。 2. static getDerivedStateFromProps(props,state) getDerivedStateFromProps 是react16.3 之后新增的钩子函数,在组件实例化后,和接受新的props后被调用。他必须返回一个对象来更新状态,或者返回null表示不更新,父组件的props更新,所带来的的重新渲染也会触发此方法。在react16.3之前使用的是constructor+componentWillMount()。 3. render() render()方法在组件中是必须的,在render()函数中以jsx语法创建dom元素,或者渲染this.props和this.state中的数据 返回null。什么也不渲染 布尔值。什么都不渲染 render()方法必须是一个纯函数,不应该改变state

React 生命周期

我只是一个虾纸丫 提交于 2020-02-23 11:53:28
componentWillMount 在渲染前调用,在客户端也在服务端。 componentDidMount : 在第一次渲染后调用,只在客户端。之后组件已经生成了对应的DOM结构,可以通过this.getDOMNode()来进行访问。 如果你想和其他JavaScript框架一起使用,可以在这个方法中调用setTimeout, setInterval或者发送AJAX请求等操作(防止异部操作阻塞UI)。 componentWillReceiveProps 在组件接收到一个新的prop时被调用。这个方法在初始化render时不会被调用。 shouldComponentUpdate 返回一个布尔值。在组件接收到新的props或者state时被调用。在初始化时或者使用forceUpdate时不被调用。 可以在你确认不需要更新组件时使用。 componentWillUpdate 在组件接收到新的props或者state但还没有render时被调用。在初始化时不会被调用。 componentDidUpdate 在组件完成更新后立即调用。在初始化时不会被调用。 componentWillUnmount 在组件从 DOM 中移除的时候立刻被调用。 来源: https://www.cnblogs.com/zouqin/p/6429143.html

TC358775XBG转换芯片:MIPI DSI转LVDS(单路/双路),替代ICN6202芯片

喜夏-厌秋 提交于 2020-02-23 10:06:02
原厂:Toshiba 型号:TC358775XBG 功能:TC358775XBG是一颗将MIPI DSI信号转换成single/ dual -link LVDS的芯片,最高分辨率支持到1920x1200 MIPI接口: (1)、支持1/2/3/4 lane(s) data,Maximum bit rate of 1 Gbps/lane (2)、支持video mode(Non-Burst Mode with Sync Pulses、Non-Burst Mode with Sync Events)和commandmode两种格式 (3)、Supports video data formats : RGB565 16bits per pixel RGB666 18 bits per pixel RGB666 loosely packed 24 bits per pixel RGB888 24 bits per pixel LVDS接口 (1)、支持 single-link or dual-link (2)、最高像素时钟:135MHz (3)、单路LVDS最高分辨率1600x1200(实际应用的时候一般到720p) 双路LVDS最高分辨率1920x1200 (4)、支持LVDS格式: RGB666 18 bits per pixel RGB888 24 bits per pixel.

入门级 - 码云(Gitee),GitHub 教程

隐身守侯 提交于 2020-02-23 08:03:58
前言 这篇文章的目的是记录我的关于GitHub的内容,从注册、下载直到设置成功每一步都有解释,其中有一些截图或者代码来自于网络。 GitHub和码云均基于Git,所以两者的操作方法基本一致,只需要学习其中一种即可。 GitHub与码云均提供免费的代码仓库。 GitHub免费版只能创建公开的项目,私有项目需要付费,截止本文发布时,服务费用是 $7.00 ; 码云免费版支持5人以下的组织,可以创建私有项目。 码云:https://gitee.com/ GitHub:https://github.com 由于GitHub是全英文界面,对于一个英语盲,学习成本稍显高昂了点,所以我这里从码云下手。 正文 1.账户注册: 无论是GitHub还是码云(下称Gitee),要使用他们,我们都需要先注册账户,已有账户的可以跳过此步骤。 Gitee GitHub 2.创建仓库: a.创建远程仓库 登入Gitee后,点击头像旁边的"+"加号-->新建项目 GitHub的操作方式与Gitee类似,这里不做截图比较 填写项目基本信息后直接点击创建,这样一个远程仓库就已经创建完成了。 b.初始化本地仓库 1)Git Bash安装 本地仓库的初始化需要借助软件Git Bash 来完成。 点击前往Git官网 下载适用您的电脑的Git版本,下载完成后运行安装程序,过程中使用默认选项即可,若须修改安装路径

样式迁移笔记

跟風遠走 提交于 2020-02-23 01:54:14
样式迁移 如果你是一位摄影爱好者,也许接触过滤镜。它能改变照片的颜色样式,从而使风景照更加锐利或者令人像更加美白。但一个滤镜通常只能改变照片的某个方面。如果要照片达到理想中的样式,经常需要尝试大量不同的组合,其复杂程度不亚于模型调参。 在本节中,我们将介绍如何使用卷积神经网络自动将某图像中的样式应用在另一图像之上,即样式迁移(style transfer)[1]。这里我们需要两张输入图像,一张是内容图像,另一张是样式图像,我们将使用神经网络修改内容图像使其在样式上接近样式图像。图9.12中的内容图像为本书作者在西雅图郊区的雷尼尔山国家公园(Mount Rainier National Park)拍摄的风景照,而样式图像则是一副主题为秋天橡树的油画。最终输出的合成图像在保留了内容图像中物体主体形状的情况下应用了样式图像的油画笔触,同时也让整体颜色更加鲜艳。 方法 下图用一个例子来阐述基于卷积神经网络的样式迁移方法。首先,我们初始化合成图像,例如将其初始化成内容图像。该合成图像是样式迁移过程中唯一需要更新的变量,即样式迁移所需迭代的模型参数。然后,我们选择一个预训练的卷积神经网络来抽取图像的特征,其中的模型参数在训练中无须更新。深度卷积神经网络凭借多个层逐级抽取图像的特征。我们可以选择其中某些层的输出作为内容特征或样式特征。以下图为例,这里选取的预训练的神经网络含有3个卷积层

C++学习笔记 第二十课 初始化列表的使用

痞子三分冷 提交于 2020-02-22 22:58:50
学习笔记内容来自:狄泰软件学院 唐佐林老师 的视频,十分感谢您的指导 初始化成员列表 1.初始化成员列表在构造函数的函数体之前 2.初始化成员列表的初始化顺序跟写代码的顺序无关,只跟成员的声明顺序有关 类中的const成员 1.类中的const成员的初始化只能在构造函数的初始化列表中进行初始化 2.类中的const成员会被分配空间 3.类中的const成员的本质是只读变量 注意 1.编译器无法直接得到const成员的初始值,因此无法进入符号表成为真正意义上的常量。 2.构造函数的函数体在执行之前,对象已经被创建好了,构造函数的函数体只不过是为了初始化对象的各种成员 示例程序: class School { private : const int ID ; const string name ; public : //执行的顺序是先给ID初始化,再给name初始化,因为ID先声明,name后声明 School ( ) : name ( "GDUT" ) , ID ( 66666 ) { } void setID ( int id ) { int & p = const_cast < int & > ( ID ) ; p = id ; } int getID ( ) const { return this - > ID ; } } ; int main ( ) { School s ;

静态成员变量和成员函数

[亡魂溺海] 提交于 2020-02-22 19:09:50
  若将成员变量声明为static,则为静态成员变量,与一般的成员变量不同,无论建立多少对象,都只有一个静态成员变量的拷贝,静态成员变量属于一个类,所有对象 共享 。静态变量在编译阶段就分配了空间,对象还没创建时就已经分配了空间,放到 全局静态区 。 静态成员变量   注意事项 :(1)最好是类内声明,类外初始化(以免类名访问静态成员访问不到);(2)无论公有,私有,静态成员都可以在类外定义,但私有成员仍有访问权限;(3)非静态成员类外不能初始化;(4)静态成员数据是共享的。 1 class Person{ 2 public: 3 static int m_age;//静态成员变量,会共享数据,对象保有的是最后一次修改的值 4 //最好类内声明,类外初始化 5 6 //静态成员建议在类外进行初始化,但在类内也可以初始化,只是通过类名访问静态成员的属性时,访问不到 7 //所以一般不这么做 8 public: 9 Person(){ 10 m_age = 10; 11 } 12 13 private: 14 int other; 15 static int m_other; 16 }; 17 int Person::m_age = 0; 18 int Person::other = 10; //非静态成员不能在类外部定义 19 int Person::m_other = 20; /