我总是想知道为什么不能只将null终止的C字符串转换为std :: string(没有构造函数,编写辅助函数和其他解决方法)?它似乎是一个简单且过于普遍的问题,你可以说,argv [1]以null结尾的字符串作为传递给你的程序的参数(或任何其他自然发生的C字符串),你需要将它的值传递给a功能直接。
即
如何在不分配新字符串对象的情况下就地包装cstr?
这是我能说的最好的答案。
const char * cstr = "Hello World.";
...
..myfunc(cstr);