现在的位置: 首页 > 综合 > 正文

C++11 初始化表

2014年09月25日 ⁄ 综合 ⁄ 共 645字 ⁄ 字号 评论关闭

虽然是给库作者用的,但对普通程序员好像也挺有用的,必将大兴于世。而且是boost里没有的东西。

#include "stdafx.h"
#include <iostream>
using namespace std;
#include <vector>
class listint
{
public:
	listint(const initializer_list<int>& nums)
	{
		m_coll.reserve(nums.size());
		for (auto i : nums)
			m_coll.push_back(i);
	}
	void printint()
	{
		for (auto i : m_coll)
			cout << "value : " << i  << endl;
	}
public:
	std::vector<int> m_coll;
};
class abc
{
private:
	listint m_list;
	int m_int;
public:
	abc(int v, listint lst) : m_int(v), m_list(lst){};
	void printer()
	{
		cout << "m_int : " << m_int << endl;
		m_list.printint();
	}
};
int _tmain(int argc, _TCHAR* argv [])
{
	listint intLst{ 1, 3, 5, 2, 3, 1 };
	intLst.printint();
	cout << "============" << endl;
	abc lst{ 112, { 2, 3, 4, 5, 77, 11, 22 } };
	lst.printer();
	return 0;
}

 

抱歉!评论已关闭.