当前位置:首页 C++ > 正文

c++中返回一个指向vector元素的指针

作者:野牛程序员:2023-06-28 11:21:58 C++阅读 2951

在C++中,可以返回一个指向vector元素的指针。下面是一个示例代码:

#include <iostream>
#include <vector>

// 返回指向vector元素的指针
int* getElementPointer(std::vector<int>& vec, int index)
{
    if (index >= 0 && index < vec.size()) {
        return &vec[index];
    } else {
        return nullptr; // 如果索引越界,返回空指针
    }
}

int main()
{
    std::vector<int> myVector = {1, 2, 3, 4, 5};

    int* pointer = getElementPointer(myVector, 2);
    if (pointer != nullptr) {
        std::cout << "Value at index 2: " << *pointer << std::endl;
    } else {
        std::cout << "Invalid index!" << std::endl;
    }

    return 0;
}

在上面的代码中,getElementPointer函数接受一个vector引用和一个索引。如果索引在有效范围内,它将返回指向对应元素的指针;否则,它将返回空指针。在main函数中,我们使用getElementPointer函数获取索引为2的元素的指针,并通过解引用指针打印该元素的值。

请注意,如果在函数外部修改了vector,那么指向元素的指针可能会失效。确保在使用指针之前,vector的生命周期得到了妥善管理,以避免悬空指针或无效指针的问题。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击