c++:
#include <iostream>
using namespace std;
/*
void test01()
{
int *p= NULL;
p=new int;
*p=100;
cout<<"*p="<<*p<<endl;
delete p;
}
void test02()
{
//申请 int数组
int *arr = NULL;
arr =new int[5]{1,2,3,4,5};
int i=0;
for(i=0;i<5;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
delete [] arr;
}
#include<string.h>
void test03()
{
char *arr=new char[32];
strcpy(arr,"hehe");
cout<<arr<<endl;
delete [] arr;
}
#include<string.h>
class My
{
private:
char m_name[32];
int m_num;
public:
My()
{
cout<<"无参构造函数"<<endl;
}
My(char *name,int a)
{
strcpy(m_name,name);
m_num=a;
cout<<"有参构造函数"<<endl;
}
My(const My &b)
{
cout<<"拷贝构造函数"<<endl;
}
aa()
{
cout<<"m_num="<<m_num<<", m_name="<<m_name<<endl;
}
~My()
{
cout<<"析构函数"<<endl;
}
};
void test04()
{
My *p = new My("lucy",100);
p->aa();
delete p;
}
void test05()
{
My arr[5]={My("lucy",18),My("lala",20)};
arr[0].aa();
arr[1].aa();
}
void test06()
{
//第一种方法:
My *arr;
arr=new My[5];//调用无参构造;
delete [] arr;
//第二种方法:调用有参构造
My *arr2;
arr2= new My[5]{My("lucy",15),My("lala",20)};
(*(arr2)).aa();
arr2[1].aa();
(arr2+1)->aa();
delete [] arr2;
}
class My
{
private:
int num;
static int data;//静态成员变量(内存声明)
public:
int jing(void)//普通函数
{
data=200;
return data;
}
static int a66(void)
{
return data;
}
};
class My
{
private:
static My *tai;
My(){}
My(const My &ob){}
public:
//2、提供一个方法 获得单例指针
static My*jing(void)
{
return tai;
}
//4、设置功能函数(自定义)
int count=0;
void aaa(char*str)
{
cout<<"打印"<<str<<endl;
count++;
}
};
My* My::tai=new My;
void test06()
{
My*p1=My::jing();
p1->aaa("入职报告");
p1->aaa("体检报告");
p1->aaa("离职报告");
cout<<"打印数量:"<<p1->count<<endl;
}
class My
{
private:
int m_num;
public:
void aa(int num)
{
m_num=num;
}
int bb(void)
{
return m_num;
}
};
void test07()
{
My ob;
ob.aa(10);
cout<<"ob.m_num = "<<ob.bb()<<endl;
My ob1;
ob1.aa(020);
cout<<"ob1.m_num = "<<ob1.bb()<<endl;
My ob2;
ob2.aa(30);
cout<<"ob2.m_num = "<<ob2.bb()<<endl;
}
class My
{
private:
int num;
public:
void arr(int num)
{
this->num=num;
}
int aaa(void)
{
return num;
}
};
void test08()
{
My ob;
ob.arr(10);
cout<<"num="<<ob.aaa()<<endl;
}
*/
class My
{
public:
My& aa(char*str)
{
cout<<str;
return *this;
}
};
void test09()
{
My ob;
/*
ob.aa("hehe");
ob.aa("lala");
ob.aa("sasa");
*/
ob.aa("hehe").aa("lala").aa("sasa");
}
int main(int argc, char *argv[])
{
test09();
return 0;
}