自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王铮Nio的博客

菜鸟c++玩家

  • 博客(22)
  • 收藏
  • 关注

原创 Xshell 推拉资源到本地。

上传也下载工具分别为rz和sz。下载文件指令:sz指令:sz 文件名就会自动弹出窗口选择保存路径,但前提是 必须是一个文件,而不能是一个目录,因此需要用tar进行打包。指令:tar -cvf gateway.tar gateway就可以把gateway打包成 gateway.tar ...

2018-11-29 21:31:50 189

原创 c++中assert函数的使用

参考链接:https://www.cnblogs.com/lvchaoshun/p/7816288.htmlassert函数的声明:void assert( int expression );其字面含义就是确保的意思,可以在函数执行前判断所需使用的参数是否都在合理范围之内,如果不在合理范围之内,则stderr打印错误信息,并abort停止函数的运行。如果expression为真,正常运...

2018-11-28 11:46:40 633

原创 const_cast使用

const_cast<> 作用是强制类型转换,并且可以将const符号去掉举例如下:{    const int a=3;    int& b=const_cast<int&>a;    b++;    cout<<a<<endl<<b<<endl;}输出结果就是4,4.参考

2018-11-28 11:12:31 724 2

原创 java 使用DatagramPacket在服务器和客户端上传递long型数字

    初学java,菜鸟笔记。    我们知道在java网络编程中的udp协议下的传输实际传送的是DatagramPacket包,而包中的内容是bytearray字节序列。如果我们要传输一个long类型的数据,必须现将long类型的数据转换为bytearray序列。我们使用的方法是jdk给我们提供的数据流和过滤流。我们首先选择数据流ByteArrayOutputStream。输入数据流中的所以数...

2018-06-05 11:09:36 673

原创 java synchronized关键字解惑

    synchronized关键字用于java编程中的线程同步。在详细讲之前,我想闲谈谈我对java同步的理解。对于每个类来说,java有两条设定好的独一无二的同步路线,两把锁:一个是类对象的同步也就是对象锁(暂称为锁A),一个是类的同步也就是类锁(暂称为锁B)。什么意思呢,首先说类对象的同步,也就是对象锁。类对象的同步也就是说每个类对象都有一条同步路线,好比一辆车,任何添加了synchron...

2018-06-02 17:31:23 166

原创 java多线程 synchronized修饰类方法

    当类中一个方法被使用synchronized关键字修饰时,含义是这个方法被锁定,或者说这个代码段被锁定,并非这个方法中所用的变量被锁定。下面首先看第一个例子,例子中在被synchronized修饰的方法中修改某个类变量并睡眠一段时间,期间在其他线程中打印该变量,这个变量可以正确的显示,也就是说变量并没有被锁死。package ttt;public class testtt9 imple...

2018-06-02 00:09:58 1765 2

原创 初学java,菜鸟笔记:初识jdk中的Thread类

     j2se相比较cpp更早引入了标准库的多线程,cpp在c++11新标准中引入,放在了头文件Thread.h中,其使用也和j2se中Thread类的使用有很大的区别。    jdk封装了Thread类,Thread类的构造函数之一为Thread(Runnable target),Runnable target是一个接口,只封装了run()方法。也就是说Thread只能看到参数对象的run方...

2018-05-31 16:10:37 343

原创 初学java,菜鸟笔记:使用ObjectOutputStream和ObjectInputStream实现java类对象的序列化

    很多时候需要将一些类对象本地化,例如我们训练了某个学习器,学习器在面向对象编程中必然是某个类对象,我们需要将其存储下来,jdk为我们提供了现成的序列化方法,比cpp方便很多,也不需要再自己写一些专门用于读取本地数据的构造函数。    jdk为我们提供了两个过滤流分别是ObjectOutputStream和ObjectInputStream,前者用于将对象序列化,通常写为.dat文件,后者用...

2018-05-31 15:05:39 854

原创 使用BufferedReader读入数据

    初学java,菜鸟笔记。    在读入数据的时候需要使用System.in。但根据API我们知道System.in的定义为 "static InputStream in;"。很显然直接使用System.in的话有很多局限性,因此我们对其进行包装,可以收先用InputStreamReader将Stream转化为Reader,这样可以以字符为单位进行传递。再使用BufferedReader将其...

2018-05-31 00:10:08 3276

原创 java PrintStream过滤输出流的简单使用

    PrintStream是我们日常经常用到的类,我们在控制台进行输出的时候可以使用System.out.println()完成就是因为System类中定义了public PrintStream类型的数据成员out,因此我们才能够完成。但是刚才说了PrintStream是个包装类,可以包装任何OutputStream的对象,只不过System.out包装的OutputStream输出流对象是比...

2018-05-30 21:32:51 399

原创 搞清楚java中的dataIO(DataOutputStream,DataInputStream)和ByteArray×Stream

    DataOutputStream的功能是帮你你更便捷的从输入流中读入以及向输出流中写出java的基本数据类型,例如8字节存储的double等等,因为stream和reader/writer分别支持1个字节的读写和2个字节的读写,这无疑给我们的读写操作造成困难。    DataInputStream的构造函数为DataInputStream(InputStream in),DataInput...

2018-05-29 22:23:47 1766

原创 java读入数据的最终形态

    初学java,菜鸟笔记    读入数据时最常用的方法是使用先使用InputStreamReader包装一个输入流类对象,如FileInputStream类对象,此时字节流变成了字符流,然后再用包装流BufferedReader将InputStreamReader对象包装,优点是有缓冲区其工作效率更高且能保护硬盘,而且还多了readLine()等方法。下面上一个简单的代码。package t...

2018-05-29 16:55:36 225

原创 java IO接口中的mark和reset方法

    public void mark(int readlimit) 方法的功能是对输入流进行定位,如果是字节流,则定位字节,如果是字符流则定位字符。参数readlimit指的是在mark之后,可以从输入流中读取的字节个数或者字符个数,如果超出的话,reset()函数将出现问题,但实际操作中如果使用缓冲buffer,即便超出也不会出问题。package ttt;import java.awt...

2018-05-29 14:39:00 3980 1

原创 FileInputStream和read函数的使用

    初学java,菜鸟笔记。    如何使用FileInputStream类读取文件中的数据。import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;public class testtt3 { public static void main(Stri...

2018-05-28 21:29:16 1703 2

原创 JAVA Iterarot接口中remove()函数的使用

    菜鸟笔记,java新手。    remove()函数删除的是迭代器所指向位置左边的对象,因为要删除某一对象,需要先用next()函数访问,访问之后迭代器的位置就更新了,因此调用remove()的时候删除的是左边的对象,为非hasnext()时的右边的对象。class boy{ private String name; @Override public String toString(...

2018-05-27 21:59:34 777

原创 java Iterator的使用

class boy{ private String name; @Override public String toString() { return "i am a boy"; } public boy(String name){ this.name=name; } public String get_name(){ return name; }}public c...

2018-05-27 21:46:36 383

原创 归并排序小结

    归并排序是一种比较重要的排序方法,也是使用分治法的典型案例,归并排序是一种稳定的排序方法,最差最优复杂度均为O(n log2 n ),需要与待排序字符串等长的辅助空间,也就是说空间复杂度是O(n)。本博文不再给出图示,如果读者对于归并排序或者有序链表归并没有什么概念的话,建议阅读其他博文,本文给出最简单的c++实现以及解析。    归并排序大致分为两步,分别是拆分和组合。首先是拆分的过程,...

2018-03-20 16:58:21 161

原创 c++11下的多线程与四种互斥量

c++11引入了thread类以及其他用于多线程的类,使得我们可以在vs2013下开心的使用多线程,不仅如此,thread类的引入还极大的降低了编程本身的难度,代码简短移动,便于阅读。这里就对c++11下四种互斥量进行解释和简单的使用。首先,互斥量存在的意义。举个简单的例子,加入大家在画一幅画,而只有彩绘工具,如果只有一个人在画,虽然效率低一些但是肯定不会出现什么冲突的现象。如果我们想提高效率,好

2018-01-28 17:24:46 282

原创 public:is_a 模板类继承的几种简单常见的模式

对于最常见的public继承,有几种常见的模式,下面做一个简单的介绍。先贴出模板基类。templateclass base{private: T value;public: base(T t) :value(t){}; base() :value(10){}; ~base(){}; void show(){ cout << "value:" << value << endl;

2018-01-26 21:54:13 399

原创 c++可调用对象 解惑

如有错误,还望指正。在阅读书籍或者论坛的时候常常会遇到可调用对象的概念,很多人都没有深入的理解这个概念,甚至有人会觉得函数就是可调用对象就是函数,其实是不对的,在这里给大家做一下详细的解释。可调用对象是c++长久以来存在的一个概念,大体可以分为4种,分别是:1.函数指针2.仿函数 3.可以被隐式转换为函数指针的类对象4.类的成员函数指针。 1.函数指针#includ

2018-01-26 19:01:15 715

原创 类的动态内存分配 和复制构造函数

class class_base{ int* pt;public: class_base(int);//构造函数 class_base(const class_base&);//复制构造函数 virtual void show_info(); virtual ~class_base();//析构函数};举例所用的类class_base如上面所示,具体的定义下面会给出。如果类的数据

2018-01-18 20:55:19 1612

原创 类的operator隐式类型转换为函数指针以及类的伪函数operator()同时存在时二者的选择问题

本人萌新一枚,有任何问题希望大神们可以指出,这段时间详细的看了一下c++11的新标准。偶然的机会想到了这个问题,如果在同一类中将类的隐私类型转换为function,即返回一个格式为static void function(void)形式的函数,然后定义一下伪函数,即将运算符()重载为同样形式的函数(即void function(void)类型)。显然,上述二者存在任一一个,该类的类对象都可以直接视

2018-01-14 14:41:30 771

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除