以下关于C++模板结构体的代码片段中,哪一段可以正确编译并运行?

vn570091 单选题 共 个子题

下列四个选项均为完整的C++代码片段,请选择语法正确且可正常运行的选项:

A
template<typename T>
struct TestStruct {
    T data;
};
int main() {
    TestStruct s;
    s.data = "hello";
    return 0;
}
B
template<typename T>
struct Pair {
    T first, second;
};
int main() {
    Pair<char, char> p;
    p.first = 'a';
    return 0;
}
C
template<typename T
struct MyStruct {
    T val;
};
int main() {
    MyStruct<int> ms;
    ms.val = 3.14;
    return 0;
}
D
#include <string>
#include <iostream>
using namespace std;

template<typename T = string>
struct Container {
    T item;
    void setItem(T val) { item = val; }
};

int main() {
    Container<> c;
    c.setItem("Hello C++");
    cout << c.item << endl;

    Container<int> c2;
    c2.setItem(100);
    cout << c2.item << endl;
    return 0;
}
正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧