wartosc domyslna konstruktora

0

Witam, mam pytanie jak wprowadzić wartość domyślną dla konstruktora gdy pierwszym jego argumentem jest tablica znaków.

np
Class (char *tab[],int i=4, char h='g')
{
}

Dla intów i charów jest to trywialne, ale jak wykonać taką samą operację dla tablicy?

1

W ten sposób

#include <iostream>
#include <array>
#include <vector>
using namespace std;

template<typename T, size_t N>
void Foo(const array<T, N> &tab = array<T, N>()){}

template<typename T>
void Bar(const vector<T> &tab = vector<T>()){}

template<typename T>
void FooBar(T *tab = NULL){}

void Fizz(const string &s = string()){}

template<template<typename> class Container, typename... Params>
void Buzz(const Container<Params...> &container = Container<Params...>()){}

int main() {
	// your code goes here
	return 0;
}
0

?

1

Prawie nigdy nie chcesz, żeby gdzieś alokowała się tablica automatycznie, ale jeśli już robisz to to zrób tak jak podał @spartanPAGE .
Można też tak, ale jest brzydko:
http://ideone.com/grLglx

1 użytkowników online, w tym zalogowanych: 0, gości: 1