implementing split function in c++

#include <iostream>
#include <vector>
#include <sstream>

std::vector<std::string> split(const std::string &s, char delimiter) {
    std::vector<std::string> tokens;
    std::istringstream tokenStream(s);
    std::string token;
    while (std::getline(tokenStream, token, delimiter)) {
        tokens.push_back(token);
    }
    return tokens;
}

int main() {
    std::string input = "Hello,World,C++,Split,Function";
    char delimiter = ',';

    std::vector<std::string> result = split(input, delimiter);

    std::cout << "Original String: " << input << std::endl;
    std::cout << "Split Elements: ";

    for (const auto &element : result) {
        std::cout << "[" << element << "] ";
    }

    return 0;
}