main函数

C++ Primer(第五版)读书笔记 & 习题解答 --- Chapter 3

戏子无情 提交于 2020-02-19 01:05:09
Chapter 3.1 1. using声明具有如下的形式: using namespace::name; Chapter 3.2 1. C++标准一方面对库类型所提供的操作做了规定,另一方面也对库的实现做出了性能上的要求,所以,在一般的应用场合,标准库类型都有足够的效率。 2. 当用一个字符串字面值初始化string对象时,除了最后那个空字符外其他所有的字符都会被拷贝到新创建的string对象中去。 3. 如果使用等号初始化一个变量,实际上执行的是拷贝初始化。如果不使用等号,则执行的是直接初始化: string s1 = "hi, ya"; // 拷贝初始化 string s2(10, 'c'); // 直接初始化 4. 在执行读取string的操作时,string对象会自动忽略开头的空白(即空格符、换行符、制表符等)并从第一个真正的字符开始读起,直到遇见下一处空白为止: // 如果我们输入" Hello World! ",输出将是"Hello",没有任何空格 string s; cin >> s; cout << s << endl; 5. string::size_type是一个无符号类型的值,而且能足够存放下任何string对象的大小。需要注意的是,string类的size函数的返回值类型是string::size_type,由于它是一个无符号类型的值

值传递与对象拷贝

五迷三道 提交于 2020-02-17 21:39:58
值传递与对象拷贝 值传递和引用传递 调用一个有参函数的时候,会把实际参数传递给形式参数。但是,在程序语言中,这个传递过程中传递的两种情况,即值传递和引用传递 两者区别 值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数 引用传递(pass by reference)是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数 java中的值传递 java中只存在值传递,不存在引用传递 对于基本数据类型 public class ParamTest { public static void main(String[] args) { ParamTest pt = new ParamTest(); int i = 10; pt.pass(i); System.out.println("print in main , i is " + i); } public void pass(int j) { j = 20; System.out.println("print in pass , j is " + j); } } /* 输出 print in pass , j is 20 print in main , i is 10 */ 由此可见,对于基本数据类型

Java学习笔记(三)

…衆ロ難τιáo~ 提交于 2020-02-17 17:34:31
继承(子类 is a 父类) //父子类有成员变量,成员函数重名(覆盖 重写)时。创建的对象是谁,就优先用谁。如果没有,则向上找。 //@override: 检测是否是正确的覆盖重写 public class Extends { public static void main ( String [ ] args ) { Teacher teacher = new Teacher ( ) ; teacher . method ( ) ; //父类方法执行 teacher . methodT ( ) ; //30 20 10 Assistant ass = new Assistant ( ) ; ass . method ( ) ; //父类方法执行 ass . methodE ( ) ; //子类运行方法e } } //父类 class Employee { int num = 10 ; public void method ( ) { System . out . println ( "父类方法执行" ) ; } public void methodE ( ) { System . out . println ( "父类运行方法e" ) ; } } //子类1 class Teacher extends Employee { int num = 20 ; public void

【翻译】C#编程语言和JAVA编程语言的比较(上)

僤鯓⒐⒋嵵緔 提交于 2020-02-17 15:56:34
原文地址: http://www.25hoursaday.com/CsharpVsJava.html 简介 C#语言是一门面向对象的语言,开发者可以使用C#和微软.NET平台快速构建各种应用程序。C#和.NET平台的目标是把开发者从一些诸如内存管理、类型安全问题、底层类库、数组边界检查等等的底层问题中解放出来并节约大量的时间,这样开发者就可以真正把时间和精力放在他们的应用程序和业务逻辑上。对于Java开发者来说,把前面那句话的开头改为“Java语言和平台”,这句话也同样可以总结Java语言和平台。 后面的内容介绍了C#和Java编程语言的异同,这些都是基于我使用两个语言的经历。所有代码都经过微软.NET框架2.0以及Java SE 6的测试。 注意:作者有些代码不符合.NET 3.5或JAVA SE 7(或以上)版本的最佳实践写法并且也不能覆盖它们所提供的新语法和新特性,但不影响本文的重点也就是平台的比较。 第一部分:C#和JAVA基本一致的地方 1、我们都是Object C#的类层次中有一个根,也就是所有C#的类都是System.Object的子类,Java也是这样,所有类都是java.lang.Object的子类。两个语言的Object类的方法有些相同(比如System.Object的ToString()和java.lang.Object的toString()),也有一些不同

第二章 开始学习c++

点点圈 提交于 2020-02-17 15:10:16
第二章 开始学习c++ 2.1 进入c++ 2.1.1 基本知识 1.c++对大小写敏感,区分大小写 2.c语言使用printf(),scanf()等输入输出,c++可以使用,但需包含stdio.h头文件。 3. #include:预处理器编译指令 int main():函数头 using namespace:编译指令 2.1.2 main() 函数 1.c++句法要求main() 函数的定义以函数头int main() 开始 c++函数可被其他函数激活和调用,函数头描述了函数与调用它的函数之间的接口。 位于函数名前面的部分叫做函数返回类型,它描述的是从函数返回给调用它的函数的信息,函数名后括号中的部分叫做形参列表;他描述的是从调用函数传递给被调用的函数的信息。 通常,main()被启动代码调用,而启动代码是由编译器添加到程序中的,是程序和操作系统之间的桥梁。事实上,该函数头描述的是main()和操作系统之间的接口 main()函数可以给调用它的函数返回一个整数值,且不从调用它的函数哪里获得任何信息。 2.main() 函数若无返回语句,则默认为return 0; c++程序必须包含一个名为main() 的函数 2.1.3 c++预处理器和iostream文件 c++程序使用输入输出工具,要使用这样两行代码 #include using namespace std; c+

java习题集2

血红的双手。 提交于 2020-02-17 05:38:46
1、打印 2 到 1000 之间、包括 2 和 1000的所有素数,每行显示 8 个素数。数字之间用一个空格字符隔开。 /* 什么是素数 就是除了1和其本身之外 没有其他的数字可以整除的 num 2 ~ m ~ num-1 找到一个数字 如果这个数字m num%m==0 num不是素数 如果一个都没有找到的话 这个数字是素数 */ public class A { public static void main ( String [ ] args ) { int count = 0 ; //当前素数的个数 boolean flag = true ; for ( int num = 2 ; num <= 1000 ; num ++ ) { for ( int m = 2 ; m <= num - 1 ; m ++ ) { if ( num % m == 0 ) { flag = false ; break ; } } if ( flag ) { count ++ ; System . out . print ( num + " " ) ; if ( count % 8 == 0 ) { //8 16 24 32 System . out . println ( ) ; } } flag = true ; } } } /* int num=10; boolean flag=true;

Python Tkinter 练习3--加入异常提醒

*爱你&永不变心* 提交于 2020-02-17 01:56:23
Python Tkinter 练习3--加入异常提醒 #Time: 2020/02/16 #Author: Xiaohong #运行环境: OS: Win7 64位 专业版Pack1 # Python: 3.7 # phantomjs: phantomjs-2.1.1-windows # db: Python 自带的Sqlite,增加 tkinter.ttk 库 功能:在练习2的基础上,加入异常提醒,并修正练习1、练习2的Bug tk_eastmoney.py # -*- coding: UTF-8 -*- #Time: 2020/02/16 #Author: Xiaohong #运行环境: OS: Win7 64位 专业版Pack1 # Python: 3.7 # phantomjs: phantomjs-2.1.1-windows # db: Python 自带的Sqlite from selenium import webdriver import time from selenium.webdriver.common.keys import Keys import xlwt import tkinter as tk import tkinter.messagebox import sqlite3 import re #把网址中的id为:dt_1 导入到 同目录下的 data

nginx-学习笔记5

蓝咒 提交于 2020-02-16 22:56:48
handler模块 基本上作为第三方开发者最可能开发的就是三种类型的模块,即handler,filter和load-balancer。Handler模块就是接受来自客户端的请求并产生输出的模块。有些地方说upstream模块实际上也是一种handler模块,只不过它产生的内容来自于从后端服务器获取的,而非在本机产生的。 如果有多个handler模块都关联了同一个location,那么实际上只有一个handler模块真正会起作用。 handler模块处理的结果通常有三种情况: 处理成功,处理失败(处理的时候发生了错误)或者是拒绝去处理。在拒绝处理的情况下,这个location的处理就会由默认的handler模块来进行处理。 模块的基本结构 Nginx的配置信息分成了几个作用域(scope,有时也称作上下文),这就是main, server, 以及location。 例: typedef struct { ngx_str_t hello_string; ngx_int_t hello_counter; }ngx_http_hello_loc_conf_t; 一个模块的配置指令是定义在一个静态数组中的。以hello module为例: static ngx_command_t ngx_http_hello_commands[] = { { ngx_string("hello_string

Java学习61:使用List

扶醉桌前 提交于 2020-02-16 22:49:25
创建项目TenthDemo,在src目录下创建包com.tenth.list,然后在包下创建Demo01.java 在集合类中,List是最基础的一种集合:它是一种有序链表。 List的行为和数组几乎相同:List内部按照放入元素的先后顺序存放,每个元素可以通过索引确定自己的位置,List的索引和数组一样,从0开始。 数组和List类似,也是有序结构,如果我们使用数组,在添加和删除元素的时候,会非常不方便。例如从一个已有的数组{‘A’, ‘B’, ‘C’, ‘D’, ‘E’}删除索引为2的元素: 这个“删除”操作实际上是把’C’后面的元素依次往前挪一个位置,而“添加”操作实际上是把指定位置以后的元素都依次向后挪一个位置,腾出来的位置给新加的元素。这两种操作,用数组实现非常麻烦。 因此,在实际应用中,需要增删元素的有序列表,我们使用最多的是ArrayList。实际上,ArrayList在内部使用了数组来存储所有元素。例如,一个ArrayList拥有5个元素,实际数组大小为6(即有一个空位): 当添加一个元素并指定索引到ArrayList时,ArrayList自动移动需要移动的元素: 然后,往内部指定索引的数组位置添加一个元素,然后把size加1: 继续添加元素,但是数组已满,没有空闲位置的时候,ArrayList先创建一个更大的新数组,然后把旧数组的所有元素复制到新数组

Java内部类与final关键字详解

一个人想着一个人 提交于 2020-02-16 16:19:49
一、基础篇 进程是系统进行资源分配和调动的基本单位,一个进程中至少有一个线程,进程中多个线程共享进程的资源。 线程是进程中的一个实体,线程是不会独立存在的,没有进程就没有线程。 对于CPU资源比较特殊,线程才是CPU分配的基本单位。 main函数启动->JVM进程->main函数线程称为主线程 内存与线程 内存与线程的关心,主要指JVM内存模型与线程之间的关系,它也是线程安全问题的主要诱因。 使用JDK工具观察线程 jcmd jstack jvisualVM jconsole 线程创建的三种方法 Account类 package com.aidata.concurrency; public class Account { private String accountNo; private String accountName; private boolean valid; public Account(){} public Account(String accountNo, String accountName, boolean valid){ this.accountNo = accountNo; this.accountName = accountName; this.valid = valid; } public String getAccountNo() { return