Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;返回字符串的函数不';除非有';这涉及到什么。。。?_C++_String_Stl - Fatal编程技术网

C++ C++;返回字符串的函数不';除非有';这涉及到什么。。。?

C++ C++;返回字符串的函数不';除非有';这涉及到什么。。。?,c++,string,stl,C++,String,Stl,我在一个类中有一个函数,它返回一个字符串。在这个函数中,我只有在添加cout时才能使它工作,实际上getName()函数可能工作正常。但是,cout会“缓存”输出(即,当内部文本缓冲区已满时,它会在屏幕上打印输出)endl'刷新缓冲区并强制cout将文本(缓存中)转储到屏幕 尝试main.cpp中的cout.flush()也许您的终端是懒惰的。尝试省略endl并插入cout.flush()作为下一行。cout应在程序结束时刷新 fow@lapbert ~ % cat blah.cpp #incl

我在一个类中有一个函数,它返回一个字符串。在这个函数中,我只有在添加
cout时才能使它工作,实际上getName()函数可能工作正常。但是,cout会“缓存”输出(即,当内部文本缓冲区已满时,它会在屏幕上打印输出)endl'刷新缓冲区并强制cout将文本(缓存中)转储到屏幕


尝试main.cpp中的cout.flush()

也许您的终端是懒惰的。尝试省略
endl
并插入
cout.flush(
)作为下一行。

cout
应在程序结束时刷新

fow@lapbert ~ % cat blah.cpp
#include <iostream>

int main() {
    std::cout << sizeof(int);
}
fow@lapbert ~ % ./a.out
4
fow@lapbert~%cat blah.cpp
#包括
int main(){

std::cout就是这样。我想cout并不像我想的那样工作。无论如何,谢谢!cout实际上不是一个打印语句,而是一个存储输出的地方。不过,我遇到过一些旧的Sun工作站,它们不是。
  public:  
        Braid(int);  
        void setCanon();  
        string getName(); 
    };  
string Braid::getName(){  
    string sName="";  

    /* body commented out
    for(int i=0; i<height; i++)
    {
        for(int j=2; j<(width-2); j++)
            {
                sName += boxes[i][j];
                sName += "|";
            }
        }

        */  
        //cout<<endl;
        return sName;
    } 
fow@lapbert ~ % cat blah.cpp
#include <iostream>

int main() {
    std::cout << sizeof(int);
}
fow@lapbert ~ % ./a.out
4