を返すことは、このC++文字列
std::string str(const char* s)
{
return std::string(s);
}
int main() {
char* strz = (char*)str("asd").c_str();
}
の代わりに行うことが可能です:
int main(){
std::string temp = str("asd");
char* strz = (char*)temp.c_str();
}
を、私はそれがconst char* strz
する必要があります知っているが、私は、コードのブロック内でのみ、それを必要とする(と新しいなし/削除)。メソッドから文字列を返した後、参照を探します(見つからない場合は文字列を削除します)。c_str()
を呼び出します。私は多くのchar(私から独立)を持っていて、私は2番目のソリューションを使うことができましたが、コードが多すぎます。
4つのスペースにコードをインデントの代わりに、インラインコードの構文( '' '\' \)を使用してコードとすべての単一の行をマークしてください! –
、すなわちすべてをハイライトしてCtrl-Kを押すか、コードフォーマットボタンを押してください – chris
あなたの 'str'関数は不必要です。あなたはコードを短縮するだけですか? –