文字列を4つのintに変換したいと思います。
bignum::bignum(const std::string& s){
std::string tmp;
const unsigned int s_size = sizeof(s)/sizeof(char);
const unsigned int max_size = 4;
const unsigned int parts = s_size/max_size;
unsigned int x = 3;
for(int i = s_size;i>0;i-=4){
tmp = s.substr(s_size-max_size, max_size);
std::cout << num[x] << std::endl;
std::istringstream (tmp) >> num[x--];
}
}
num は int 型のベクトルです。
問題は substr が範囲外であるためだと思いますが、どういうわけか機能しません。