3
A
回答
3
#include <initializer_list>
#include <cassert>
struct bar
{
void foo(const std::initializer_list<int>& bits)
{
assert(bits.size() == 3);
auto i = bits.begin();
x = *i++;
y = *i++;
z = *i++;
}
int x, y, z;
};
int main()
{
bar b;
b.foo({0, 1, 2});
}
+0
是initializer_list'设计通过值传递便宜。 – Nevin
-2
你必须有构造函数需要三个整数。试想一下:
struct Point {
Point (int p1_, int p2_, int p3_) : p1 {p1_}, p2 {p2_}, p3 {p3_} {}
int p1;
int p2;
int p3;
};
void foo (Point pt) {
std::cout << pt.p1 << std::endl;
std::cout << pt.p2 << std::endl;
std::cout << pt.p3 << std::endl;
}
与用法:
foo ({1, 2, 3});
std::cout << std::endl;
foo ({4, 5, 6});
相关问题
- 1. 我可以将对象列表转换为二维数组吗
- 2. 如何将散列表向下转换为抽象类对象
- 3. 我可以如何将ReentrantReadWriteLock.readLock或ReentrantReadWriteLock.writeLock转换为我的类对象
- 4. 我如何将DataTable转换为列表{对象,列表{对象}} Linq
- 5. 隐式转换对象
- 6. 如何将对象列表转换为对象队列
- 7. 如何将列表转换为Flask模板的类对象
- 8. Java,通用启用对象列表的隐式和显式类型转换
- 9. 我可以将char *缓冲区转换为对象类型吗?
- 10. 如何让我的类在C#中隐式转换为字符串?
- 11. 我可以将Microsoft.Office.Interop.Excel.Chart对象转换为Microsoft.Office.Tools.Excel.Chart对象吗?
- 12. 我可以将Stream对象转换为FileInfo对象吗?
- 13. 我可以将JSON对象转换为JAXB对象吗?
- 14. Java:可能的对象列表转换为字符串列表
- 15. 如何让C#中的类可以转换为DateTime?
- 16. 将对象的隐式数组转换为单个对象php
- 17. 转换为可序列化的对象
- 18. 我可以将json输入转换为jQuery中的对象列表吗?
- 19. 如何列表对象转换为DataTable对象
- 20. 将数组隐式转换为列表
- 21. 如何将对象数组转换为一个对象我可以使用obj.find()
- 22. 无法将类型通用列表隐式转换为类
- 23. 如何将平行列表的对象转换为对象列表?
- 24. 如何将对象列表转换为另一个列表。
- 25. 如何将对象列表转换为接口列表?
- 26. 从列表对象转换为类中的类#
- 27. 如何类转换为实例对象
- 28. 如何将JSONObject转换为类对象?
- 29. 如何向下转换可以是多种类型的对象?
- 30. 如何排列的列表转换为JSON对象
添加一个构造函数'的std :: initializer_list'' –