#include <iostream>
#include <vector> //动态数组容器
#include <cstdarg> //函数可变参数定义的头文件
using namespace std; //std标准命名空间 c++标准库
namespace Name1{ //自定义命名空间,可以用 Name1::XXX调用
void printf()
{
std::cout<<"Name1"<<std::endl;
}
}
namespace Name2{
void printf()
{
std::cout<<"Name2"<<std::endl;
}
//可变参数,左运算(从右到左),最后一个参数可以用于放长度的参数
void pr(const int len...)
{
va_list list; //用于接收参数的容器
va_start(list,len);//将接收到的len个参数存list容器中
std::cout<<"pr"<<endl;
for (int i = 0; i < len; ++i) {
std::cout<<va_arg(list,int)<<" ";//获取容器中的参数
}
std::cout<<endl;
}
}
int main() {
std::cout << "Hello, World!" << std::endl;
int arrs[]={1, 2, 3, 4, 567};
std::cout<<std::size(arrs);
vector<int> ArrList; //动态数组容器
ArrList.push_back(1);//从容器中添加数据
ArrList.push_back(1);
ArrList.push_back(1);
ArrList.push_back(1);
ArrList.size();
Name2::pr(6,1,2,3,4,5,6);
for (const auto &item: ArrList)//增强for,可以直接获取数据
{
cout<<item<<" ";
}
cout<<endl;
for(int arr:arrs)//增强for
{
std::cout<<arr<<" ";
}
std::cout<<std::endl;
Name1::printf();
Name2::printf();
return 0;
}
评论