gpt4 book ai didi

c++ - 如何创建一个类,使 vector 起作用std::vector > v {1,2,3};

转载 作者:行者123 更新时间:2023-12-02 09:53:14 25 4
gpt4 key购买 nike

我需要一个类,以便指导工作

int main() {
// create a vector with values 10,2,3
std::vector<MyClass<int>> v{ 10,2,3 };
//print values
for (const auto& m : v) std::cout << m.value() << ",";
return 0;
}

最佳答案

只需编写一个template类:

template<typename T>
class MyClass {
private:
T val;
public:
MyClass(T a) : val{std::move(a)} {}
T value() const { return val; }
};
请注意,如果将构造函数标记为 explicit:
  explicit MyClass(T a) : val{std::move(a)} {}
然后,您将必须在 vector 初始值设定项列表中显式构造值:
std::vector<MyClass<int>> v{ MyClass<int>{10}, MyClass<int>{2}, MyClass<int>{3} };

关于c++ - 如何创建一个类,使 vector 起作用std::vector <MyClass <int >> v {1,2,3};,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62602714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com