Имеется довольно большой конструктор и хочется его вынести за пределы определения класса оставив только прототип, подобно функции, но как это правильно сделать? Вот сам конструктор:
truth_table(std::size_t column = min_value) : column(column)
{
string = pow(bi, column);
rezult.resize(string, 0);
tabl.resize(string);
for (int i = 0; i < tabl.size(); ++i) {
tabl[i].resize(column, 0);
}
std::vector<bool> mask(column, 0);
mask[0] = 1;
for (int i = 1; i < mask.size(); ++i) {
mask[i] = mask [i - 1] + mask [i - 1];
}
for (int i = 0; i < tabl.size(); ++i) {
for (int j = 0; j < tabl[i].size(); ++j) {
tabl[i][j] = (i & mask[j]);
}
}
}
Как и любую функцию-член:
class Type ...
{
...
Type(...);
...
Type::Type(...):base(...)
{
....
}
Да, значения по умолчанию оставьте в объявлении конструктора, в определении их использовать не нужно.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Откуда можно посмотреть исходный код STL в C++, перерыл папку компилятора, но кроме хедеров ничего не нашел