c++
haoshenwang
Alibaba大神
展开
-
c++和java中关于如何调用父类方法和子类方法的辨析
首先观察下面两个程序(分别使用vc6.0和myecllipse10测试)#include using namespace std;class A{public: void f() { cout<<"class A "<<endl; }};class B : public A{public: void f() { cout<<"class B "原创 2013-10-25 21:38:08 · 1576 阅读 · 0 评论 -
C++ Bitset
Constructors#include #include #include using namespace std;int main(int argc, char *argv[]){ // 默认构造函数,所有位初始化为0 bitset bs1; bitset bs2(0xfa2); bitset bs3(string("0101111001")); cout << s原创 2016-08-01 15:33:43 · 669 阅读 · 0 评论 -
C++ String
constructors string(); string( size_type length, char ch ); string( const char *str ); string( const char *str, size_type length ); string( string &str, size_type index, size_type length ); str原创 2016-08-01 11:27:57 · 513 阅读 · 0 评论 -
基于POSIX下REGEX库的文本URL过滤(C/C++语言)
URL过滤报告URL过滤需求分析:输入为带中文、英文、标点符号、特殊符号等的字符串,输出也是字符串,但有以下要求:1.把输入字符串中的网站URL(以“http://”开头)、文件URL(以“.xxx(若干个x)结尾”)的子串找到,并删除。2.将其他的无关字符串原样保留,去除需要过滤的URL之后,直接拼接。3.输出去掉所有URL,其他保持不变的字符串。 URL过滤技术分析原创 2016-06-19 17:01:49 · 2422 阅读 · 0 评论 -
生成1-N*N的矩阵,一圈一圈的
#include using namespace std;int N;int data[100][100];bool visit[100][100];void getNext(int status, int& nx, int &ny){ switch (status) { case 0: //right nx = 0, ny = 1; break; case 1:原创 2016-04-03 20:50:33 · 1271 阅读 · 0 评论 -
C++别名传参和指针传参区别
#include #include using namespace std;void print1(string &a){ cout<< a <<endl;}void print2(string *a){ cout<< *a <<endl;}int _tmain(int argc, _TCHAR* argv[]){ string a = "hello world";原创 2015-11-27 17:01:31 · 1703 阅读 · 0 评论 -
C/C++ static全局变量和static局部变量
1.static全局变量不能被其他源文件通过extern进行引用访问。2.static局部变量的值在函数执行完毕,仍然可以保留下来。原创 2015-04-02 09:42:51 · 1693 阅读 · 0 评论 -
拒绝switch,程序加速之函数指针数组
先看一个使用switch语句的程序:#include #include //加法int add(int a,int b){ return a+b;}//减法int subtract(int a,int b){ return a-b;}//乘法int multi(int a,int b){ return a*b;}//除法int divide(int原创 2015-04-02 13:11:33 · 2546 阅读 · 3 评论 -
C++类的继承实例
首先由三个类分别为DateType(日期类)、TimeType(时间类)、DateTimeType(日期时间内)。具体代码如下:#include using namespace std;class DateType{ int year,month,day;public: DateType(int year = 2000,int month = 12,int day = 1) {原创 2014-05-12 17:25:41 · 5084 阅读 · 0 评论 -
C++类的拷贝构造(Copy constructor)函数隐藏陷阱
好长时间没写C++了,今天写了个很简单的String类,竟然调试了半天,最终发现了一个十分隐蔽的陷阱,写出来供大家分享。C++中类的拷贝构造函数的作用就是通过类的一个对象来实例化另一个对象。下面是我写的一个MyString类,头文件MyString.h:#include using namespace std;class MyString{public: MyString();原创 2014-12-26 16:16:07 · 1568 阅读 · 0 评论 -
C++String类关键操作简介
1.string 类的头文件#includeusing std::string;2.string 类的构造函数string s1; //默认的构造函数,s1为空串string s2(s1); //将s2初始化为s1的一个副本,对s2的操作不会影响s1string s3("value"); //将s3初始化为一个字符串字面值的副本string s4(n,'c'); /原创 2014-06-12 11:42:15 · 1009 阅读 · 0 评论 -
C++重载前后缀++,--
首先切记一句话:前缀++比后缀++的效率高,返回引用的效率比返回对象的效率高,所以前缀++返回引用,后缀++返回对象转载 2014-05-12 19:53:34 · 3722 阅读 · 0 评论 -
C++格式化输出
格式化输出主要包括控制状态标志、输出宽度、填充字符、输出精度等内容。其目的是实现特定的输出格式,实现方式有两种:使用状态标志和成员函数进行格式化输出和使用流操作符进行格式化输出。1.使用状态标志和成员函数输出标志由各种状态标志来确定,它们是定义在ios类中的枚举变量,引用时必须包含ios::前缀。常见的状态标志如下:与此相关的主要是以下重要成员函数。setf(long flag原创 2014-05-13 15:38:33 · 5730 阅读 · 1 评论 -
c/c++中const的常用方法
1.const修饰变量,变量的值不能改变如下面程序(vc6.0下测试)void main(){ const int a = 0; a = 1;}/*编译错误C:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(4) : error C2166: l-value specifies const objec原创 2013-10-25 20:56:47 · 1454 阅读 · 0 评论 -
Linux 同步 异步 阻塞 非阻塞
一般的IO函数如read,write,recv等是同步阻塞。select,poll,epoll是同步非阻塞(IO等待非阻塞,阻塞在select,poll,epoll)。AIO函数为异步阻塞原创 2016-08-02 09:59:41 · 452 阅读 · 0 评论