美文网首页C++
《C++ Primer》6.3

《C++ Primer》6.3

作者: codinRay | 来源:发表于2017-03-18 21:54 被阅读0次

1.返回非局部对象的引用来修改值

char &get_val(string &s, string::size_type ix) {
    return s.at(ix);
}
void func1() {
    string s("This is a string.");
    for (string::size_type i = 0; i < s.size(); ++i) {
        if (s.at(i) == 'a')
            get_val(s, i) = 'A';
    }
    cout << s << endl;
}

2.返回值可以是一个列表

vector<string> string_list() {
    int x;
    cin >> x;
    switch (x) {
    case 0:return {};
    case 1:return { "saber" };
    case 2:return { "saber","archer" };
    case 3:return { "saber","archer","lancer" };
    }
    return {};
}
void func2() {
    for (string i : string_list())
        cout << i << ' ';
    cout << endl;
}

相关文章

网友评论

    本文标题:《C++ Primer》6.3

    本文链接:https://www.haomeiwen.com/subject/ouppnttx.html