
C++语言
文章平均质量分 76
fguknow
这个作者很懒,什么都没留下…
展开
-
cout输出16进制
// 方法1coutcoutcout// 方法2// 输出16进制, setbase(int)可以设置8等。 cout // 方法3 setiosflags(ios::showbase); cout .......cout.unsetf(ios::hex);#include#includeusin原创 2013-05-18 14:55:11 · 727 阅读 · 0 评论 -
q
http://www.cnblogs.com/lzjsky/archive/2011/01/24/1943199.html转载 2013-12-10 21:28:37 · 440 阅读 · 0 评论 -
c++反射实现
只需要继承基本类Object,在类的头文件中定义宏,DECLARE_CLASS(类名),在类的实现文件中定义宏,IMPLEMENT_CLASS(类名),即可,欢迎指正。代码以来的库都是C++标准库,所以不需要额外添加库。 例如: #include #include #include "DynBase.h" using namespace std; class转载 2013-12-08 21:50:52 · 411 阅读 · 0 评论 -
for_each()详解
for_each使用方法详解[转]Abstract之前在<a target="_blank" title="(原創) 如何使用for_each() algorithm? (初级) (C++) " href="http://www.cnblogs.com/oomusou/archive/200" target="_blank">(原創) 如何使用for_each() al转载 2013-11-06 15:56:29 · 913 阅读 · 0 评论 -
c++异常
程序做错误检查是必要的,通常我们可以通过返回值告诉客户有了错误,不过异常提供了更加方便的手段和丰富的信息。当某处程序发现了错误,可以选择自己处理或者交给外部调用者处理,比如:void Func(char* p){if(p==NULL){throw std::invalid_argument(“p is NULL”);}} 而调用者可以选择拦截该异常对象或者放转载 2013-11-04 14:17:15 · 427 阅读 · 0 评论 -
关于TCHAR与tchar.h
因为VS里的很多字符编码都是采用unicode来编码的,为了兼容字符集。微软开发了tchar包,tchar 在unicode下是wchar(双字符),而普通是char。因为C++支持两种字符串,即常规的ANSI编码和Unicode编码,这样对应的就有了两套字符串字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串 。微软将这两套字符集及其操作进行了统一,通过条件编译(通翻译 2013-10-28 19:21:03 · 645 阅读 · 0 评论 -
读取ini配置
MiniINI是一个开源的,非常高效的,并且非常容易上手的INI库。使用C++实现的,同时也可以操作CFG文件。它本身不依赖除标准库以外的任何库文件,能够在支持C99的各种编译器上编译。采用MIT/X许可证,有兴趣的可以参考:https://code.launchpad.net/miniini。到现在为止,项目本身并不支持对INI文件的写操作,因此只有忍痛割爱了。它的接口非常简洁。可以看看示例代码转载 2013-10-28 20:34:13 · 1263 阅读 · 0 评论 -
#pragma
#pragma once(比较常用)只要在头文件的最开始加入这条指令就能够保证头文件被编译一次,这条指令实际上在VC6中就已经有了,但是考虑到兼容性并没有太多的使用它。#pragma once是编译相关,就是说这个编译系统上能用,但在其他编译系统不一定可以,也就是说移植性差,不过现在基本上已经是每个编译器都有这个定义了。#ifndef,#define,#endif这个是C++语言相原创 2013-10-28 19:19:32 · 423 阅读 · 0 评论 -
C++中get函数和getline函数
cin.getline()和cin.get()都是对输入的面向行的读取,即一次读取整行而不是单个数字或字符,但是二者有一定的区别。 cin.get()每次读取一整行并把由Enter键生成的换行符留在输入队列中,比如: #include using std::cin; using std::cout; const int SIZE = 15; int main( ){转载 2013-08-21 20:50:25 · 621 阅读 · 0 评论 -
C++之命名空间
使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突。在C++中,变量、函数和类都是大量存在的。如果没有命名空间,这些变量、函数、类的名称将都存在于全局命名空间中,会导致很多冲突。比如,如果我们在自己的程序中定义了一个函数toupper(),这将重写标准库中的toupper()函数,这是因为这两个函数都是位于全局命名空间中的。命名冲突还会发生在一个程序中使用两个或者更多的第三方库的情况中。转载 2013-05-10 15:01:29 · 369 阅读 · 0 评论 -
拷贝构造函数
一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyint a = 100; int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。转载 2013-08-21 20:26:18 · 626 阅读 · 0 评论 -
引用小结
1.引用作为返回值int &get(int *arr,int size){ return arr[size];}int main(){ int arry[2] = {0,1}; for(int i = 0;i <2; i++) { get(arry,i) = i; } cout << arry[0] << endl;r原创 2013-05-18 13:17:53 · 428 阅读 · 0 评论 -
运算符重载
c++不允许用户定义新的运算符,只能对于已有的运算符进行重载。除了5个不能外.成员访问运算符 , .*成员访问指针运算符 , ::域运算符 ,sizeof尺寸运算符 , ?:条件运算符其余都可以运算符重载函数可以作为类的成员函数,也可以放在类外作为类的友元函数例:#include //实现复数加法#define FLAG 0class Complex{原创 2013-05-11 21:21:58 · 1483 阅读 · 0 评论 -
C/C++中Static的作用详述
C/C++中Static的作用详述在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c转载 2013-05-13 00:37:16 · 416 阅读 · 0 评论