前提・実現したいこと
引数に指定された文字or文字列がヒープにあるのかスタックにあるのか受け取り側で静的な振る舞いで変える方法ってあるんでしょうか?
該当のソースコード
つまりこんなことがしたい
C++20
1template<class T> 2class StringStrage; 3 4 5template<HeapStringConcept T> 6class StringStrage<T> 7{ 8 T &obj; 9 StringStrage(T obj):Value(move(obj)){}; 10} 11 12template<StackStringConcept T> 13class StringStrage<T> 14{ 15 T &obj; 16 StringStrage(T obj):Value(copy(obj)){}; 17} 18 19int main() 20{ 21 StringStrage heap = StringStrage( new char[5]); 22 char stack_arg[5] = {'h','o','g','e','\0'}; 23 StringStrage stack = StringStrage(stack_arg); 24}
もしかしたら、テンプレート引数が間違ってるかもしれません。
回答2件
あなたの回答
tips
プレビュー