`
文章列表
调用函数时需要一定的时间和空间的开销。C++提供一种提高效率的方法,即在编译时将函数调用处用函数体替换,类似于C语言中的宏展开。这种在函数调用处直接嵌入函数体的函数称为内联函数(inline function),又称内嵌函数或内嵌函数。 指定内联函数的方法很简单,只需要在定义函数时增加 inline 关键字。 注意:是在函数定义时增加 inline 关键字,而不是在函数声明时。在函数声明时增加 inline 关键虽然没有错误,但是也没有任何效果 inline 关键字放在函数声明处不会起作用: inline void swap(int &a, int &b); void ...

C++虚析构函数详解

    博客分类:
  • C++
当派生类的对象从内存中撤销时一般先调用派生类的析构函数,然后再调用基类的析构函数。但是,如果用new运算符建立了临时对象,若基类中有析构函数,并且定义了一个指向该基类的指针变量。在程序用带指针参数的delete运 ...

Video元素

引用<!DOCTYPE html> <html> <body> <div style="text-align:center">   <button onclick="playPause()">播放/暂停</button>   <button onclick="makeBig()">放大</button>   <button onclick="makeSmall()">缩小</button> ...

Audio元素

HTML5 Audio - 如何工作 如需在 HTML5 中播放音频,你需要使用以下代码: 引用实例 <audio controls>   <source src="horse.ogg" type="audio/ogg">   <source src="horse.mp3" type="audio/mpeg"> 您的浏览器不支持 audio 元素。 </audio> 尝试一下 » control 属性供添加播放、暂停和音量控件。 在<audio> 与 &l ...

入门实例程序

在使用Node.js创建实际“Hello, World!”应用程序之前,让我们看看Node.js的应用程序的部分。Node.js应用程序由以下三个重要组成部分: 导入需要模块: 我们使用require指令加载Node.js模块。 创建服务器: 服务器将监听类似Apache HTTP Serv ...
Linux中需要监控的资源主要有 CPU、主存(内存)、硬盘空间、I/O时间、网络时间、应用程序等。 影响系统性能的主要因素有: 因素 说明用户态CPU CPU在用户态运行用户程序所花费的时间,包括库调用,但是不包括内核花费的时 ...
Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配。注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能。 vi 是十年磨一剑的产品,虽然命令繁多,并且大 ...
TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish ...
优化表的数据类型 表需要使用何种数据类型,是需要根据应用来判断的。虽然应用设计的时候需要考虑字段的长度留有一定的冗余,但是不推荐让很多字段都留有大量的冗余,这样即浪费存储也浪费内存。 我们可以使用PROCEDURE ANALYSE()对当前已有应用的表类型的判断,该函数可以对数据表中的列的数据类型提出优化建议,可以根据应用的实际情况酌情考虑是否实施优化。语法:    SELECT * FROM tbl_name PROCEDURE ANALYSE();    SELECT * FROM tbl_name PROCEDURE ANALYSE(16,256); 输出的每一列信息都会对数据表中的 ...
MySQL还允许改变语句调度的优先级,它可以使来自多个客户端的查询更好地协作,这样单个客户端就不会由于锁定而等待很长时间。改变优先级还可以确保特定类型的查询被处理得更快。 我们首先应该确定应用的类型,判断应用是以查询为主还是以更新为主的,是确保查询效率还是确保更新的效率,决定是查询优先还是更新优先。 下面我们提到的改变调度策略的方法主要是针对Myisam存储引擎的,对于Innodb存储引擎,语句的执行是由获得行锁的顺序决定的。 MySQL的默认的调度策略可用总结如下: 写入操作优先于读取操作。 对某张数据表的写入操作某一时刻只能发生一次,写入请求按照它们到达的次序来处理。 对某张数据表的 ...
C++还保留了C语言中用于输入和输出单个字符的函数,使用很方便。其中最常用的有getchar函数和putchar函数。 putchar函数(字符输出函数) putchar函数的作用是向终端输出一个字符。例如:     putchar(c); 它输出字符变量c的值。 【例3 ...
Mysql4.1开始支持SQL的子查询。这个技术可以使用SELECT语句来创建一个单列的查询结果,然后把这个结果作为过滤条件用在另一个查询中。使用子查询可以一次性的完成很多逻辑上需要多个步骤才能完成的SQL操作,同时也可以避免事务或者表锁死,并且写起来也很容易。但是,有些情况下,子查询可以被更有效率的连接JOIN替代。 假设我们要将所有没有订单记录的用户取出来,可以用下面这个查询完成:     SELECT * FROM customerinfo WHERE CustomerID NOT in (SELECT CustomerID FROM salesinfo ) 如果使用连接JOIN来完 ...

C++输入cout与输出cin

    博客分类:
  • C++
输入和输出并不是C++语言中的正式组成成分。C和C++本身都没有为输入和输出提供专门的语句结构。输入输出不是由C++本身定义的,而是在编译系统提供的I/O库中定义的。 C++的输出和输入是用“流”(stream)的方式实现的。图3.2和图3.3表示C++通过流进行输入输出的过程。 有关流对象cin、cout和流运算符的定义等信息是存放在C++的输入输出流库中的,因此如果在程序中使用cin、cout和流运算符,就必须使用预处理命令把头文件stream包含到本文件中:     #include <iostream> 尽管cin和cout不是C++本身提供的语句,但是在不致混淆的情况下 ...
下例是一个简单的地理定位实例,可返回用户位置的经度和纬度: <!DOCTYPE html> <html> <body> <p id="demo">点击按钮获取您当前坐标(可能需要比较长的时间获取):</p> <button onclick="getLocation()">点我</button> <script> var x=document.getElementById("demo"); function getLocation()   { ...
下面的例子是一个简单的拖放实例: 引用 <!DOCTYPE HTML> <html> <head> <script> function allowDrop(ev) { ev.preventDefault(); } function drag(ev) { ev.dataTransfer.setData("Text",ev.target.id); } function drop(ev) { ev.preventDefault(); var data=ev.d ...
Global site tag (gtag.js) - Google Analytics