たぶん仕様です。 buf長はLENGTHだけど中身は、0長文字列という意図です。
cygwin gcc
#include "src/text.h" #include <iostream> int main(int argc, char **argv) { auto a=meshio::fixed_string<10>(); std::cout << '[' << a.str() << ']' << std::endl; reutrn 0; }
で特に問題なかったです。 何か都合の悪いシチュエーションがある場合知らせてもらえれば、仕様を変えられます。
fixed_string::end_がbegin_の先頭を指し示しています.そのため,fixed_string::str()が失敗します.
コンストラクタで
と初期化しているのが原因です. とすべきです.