C/C++
EmSoftEn
这个作者很懒,什么都没留下…
展开
-
C++ 类模板和模板类
类模板的意义和函数模板的意义是一样的。类模板的定义template //声明一个模板,虚拟类型名为T。注意:这里没有分号。class Compare //类模板名为Compare{public : Compare(T a,T b) { x=a;y=b; } T max( ) { return (x>y)?x:y; }转载 2015-12-28 20:16:45 · 31755 阅读 · 0 评论 -
格式化输出函数printf()
printf()函数的调用格式为:printf("", );1. 格式化规定符%d 十进制有符号整数 %u 十进制无符号整数 %x, %X 无符号以十六进制表示的整数 %f 浮点数 %s 字符串 %c 单个字符 %e 指数形式的浮点数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法 %p 指针的值 (1).转载 2016-10-30 20:24:22 · 2978 阅读 · 0 评论 -
windows下创建并使用动态链接库(.dll)
定义:动态链接库(dll)是一个包含可由多个程序同时使用的代码和数据的库。动态链接库不能直接运行,也不能接收消息。它们是一些独立的文件,其中包含能被可执行程序或其它DLL调用来完成某项工作的函数或是数据一、创建动态链接库1、新建一个名为DllOne的win32工程,并设置Application type为DLL,创建一个DLL工程。2、添加如下三个文件DllMain.c原创 2016-04-09 15:08:28 · 3175 阅读 · 0 评论 -
windows下创建并使用静态链接库(.lib)
开发环境:vs2008, C++静态链接库:将函数和数据编译进一个二进制文件(通常扩展名为.lib)。如果某个工程需要使用这个静态库,则需要在编译链接可执行文件时,链接器从库中复制这些函数和数据并把它们和应用程序的其它模块组合起来创建最终的可执行文件(.EXE文件)。一、创建静态链接库1、创建一个新的win32工程 (工程名为LibOne)2、选择Application type为原创 2016-04-08 17:38:48 · 3695 阅读 · 0 评论 -
C++中const相关知识
const的作用:定义常量修饰函数形参修饰函数体存在同名的const和非const函数时只存在const函数时只存在非const函数时const_cast原创 2016-01-12 20:27:47 · 748 阅读 · 0 评论 -
有符号数与无符号数之间的转换
1,C语音中负数怎么转换为补码形式2,有符号数怎么转换为无符号数3,无符号数怎么转换为有符号数原创 2016-01-12 17:42:20 · 12323 阅读 · 1 评论 -
C++函数模板和模板函数
1.函数模板的声明和模板函数的生成1.1函数模板的声明函数模板可以用来创建一个通用的函数,以支持多种不同的形参,避免了重载函数的多个函数体。它的最大特点是把函数使用的数据类型作为参数。函数模板的声明形式为:template(参数表){ 函数体}其中,template是定义模板函数的关键字;template后面转载 2015-12-25 18:10:09 · 799 阅读 · 0 评论 -
C++中pair的用法
pair是C++中一种模板类型。每个pair对象可以存储两个值,这两个值可以是不同的数据类型。存储的值可以是基本数据类型也可以是自定义数据类型。声明命名空间:using namespace std;或using std::pair;pair pdata;或使用全名std::pair pdata;一、定义和初始化pair p1(1, 2);pair p2(p原创 2016-01-26 16:04:22 · 5035 阅读 · 0 评论 -
C++ math.h库函数
要#include abs原型:extern int abs(int x);功能:求整数x的绝对值说明:计算|x|, 当x不为负时返回x,否则返回-xfabs原型:extern float fabs(float x);功能:求浮点数x的绝对值说明:计算|x|, 当x不为负时返回x,否则返回-xceil原型:extern float cei转载 2015-12-25 09:54:57 · 4689 阅读 · 0 评论 -
#pragma用法
解析#pragma指令 在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为:#Pragma Para 其中Par转载 2015-12-21 20:01:02 · 637 阅读 · 0 评论 -
windows下C++多线程
CreateEventHANDLE CreateEvent(LPSECURITY_ATTRIBUTES lpEventAttributes,// 安全属性BOOL bManualReset,// 复位方式BOOL bInitialState,// 初始状态LPCTSTR lpName // 对象名称);SetEventCloseHandleCreateTh原创 2015-12-23 16:55:31 · 1793 阅读 · 0 评论 -
Windows下socket简单的编程实例
// client_test.cpp : Defines the entry point for the console application.#include "stdafx.h"#include //使用socket需要的头文件#if WINCE //client在wince设备上,所以这里包含的是ws2库#pragma comment(lib,"ws2")原创 2015-03-17 20:26:09 · 1300 阅读 · 0 评论 -
标准C语言字符串函数
包含头文件:#include #include strcpy 功 能: 拷贝一个字符串到另一个字符串中 用 法: char *stpcpy(char *dest, char *src); strcat 功 能: 把src所指的字符串添加到dest结尾处(覆盖dest结尾处的'\0',并添加'\0')用 法: char *strcat(原创 2016-01-06 10:48:52 · 970 阅读 · 0 评论 -
C++中的inline函数
在函数名字前面加上inline,该函数就被声明为内置函数。每当程序中出现对该函数的调用时,C++编译器使用函数体中的代码插入到调用该函数的语句之处,而不是将流程转出去,同时用实参代替形参,以便在程序运行时不再进行函数调用。引入内置函数的目的就是:消除函数调用时系统开销,以提高运行速度。减少程序执行过程中对CPU的中断次数。我们知道,在程序执行过程中调用函数时,系统要将程序当前的一些状态信息存到转载 2016-01-22 17:41:05 · 833 阅读 · 0 评论 -
C++中前置声明和头文件包含
假设有一个Date类Date.h[cpp] view plaincopyclass Date { private: int year, month, day; }; 如果有个Task类的定义要用到Date类,有两种写法其一Task1.h[cpp] view pla转载 2015-12-21 20:40:24 · 13612 阅读 · 3 评论 -
标准C++中string类的用法
包含头文件为:#include 声明命名空间:using std::string;using std::wstring;或using namespace std;就可以使用string/wstring了,它们两分别对应着char和wchar_t,string和wstring的用法是一样的。定义、初始化:string类有多种定义和初始化方式,可以用原创 2016-01-05 17:46:17 · 1035 阅读 · 0 评论 -
C++命名空间
目的: * 掌握命名空间的作用及定义,如何使用命名空间。一、 为什么需要命名空间命名空间是ANSI C++引入的可以由用户命名的作用域,用来处理程序中常见的同名冲突。在C语言中定义了3个层次的作用域,即文件(编译单元)、函数和复合语句。C++又引入了类作用域,类是出现在文件内的。在不同的作用域中可以定义相同名字的变量,互不于扰,系统能够区别它们。由于各头文件可能转载 2015-12-29 20:11:36 · 728 阅读 · 0 评论 -
标准C++中的vector用法
STL是C++标准的组成部分,它提供了一组表示容器、迭代器、函数对象和算法的模板。容器:是一个与数组类似的单元,可以存若干个值。STL容器是同质的,即存储的值的类型相同;算法:是完成特定任务的处方;迭代器:是能够用来遍历容器的对象,与能够遍历数组的指针类似,是广义指针;函数对象:是类似于函数的对象,可以是类对象或函数指针(包括函数名,因为函数名被用作指针)。vector原创 2016-01-25 19:18:57 · 1057 阅读 · 0 评论