You can use std::istream_iterator to parse the string. Before that you need to replace all delimiters to spaces.
 std::vector<int> myarr;
 std::string int_str = "3,4,5,6";
 std::replace( int_str.begin(), int_str.end(), ',', ' ' );
 std::stringstream in( int_str );
 std::copy( std::istream_iterator<int>(in), std::istream_iterator<int>(), std::back_inserter( myarr ) );
For UNICODE version it will look like:
 std::wstring int_str = L"3,4,5,6";
 std::replace( int_str.begin(), int_str.end(), L',', L' ' );
 std::wstringstream in( int_str );
 std::copy( std::istream_iterator<int, wchar_t>(in), std::istream_iterator<int, wchar_t>(), std::back_inserter( myarr ) );