草庐IT

GNU-getline

全部标签

c++ - GNU ld 找不到存在的库

我在这里玩弄的包是相当未知的,但问题是相当普遍的。基本上,我正在尝试使用C++扩展编译Python模块(称为rql)。该扩展使用名为gecode的外部框架,其中包含多个库。我编译了gecode并安装在本地。现在,让输出说明一切:red@devel:~/build/rql-0.23.3$echo$LD_LIBRARY_PATH/home/red/usr/libred@devel:~/build/rql-0.23.3$ls$LD_LIBRARY_PATH|greplibgecodeintlibgecodeint.solibgecodeint.so.22libgecodeint.so.22.

c++ - 可以将 std::getline() 与移出的 std::string 一起使用吗?

std::getline(std::istream&,std::string&)的第二个参数是否安全且定义明确?成为一个左值,指的是从std::string移出的,如果是,那么字符串是否从其移出状态恢复,所以方法如pop_back()可以安全调用吗?更简单地说,使用getline()写入字符串是否与分配给该字符串具有等效的语义?或者更具体地说,以下(有些做作的)代码段是否定义明确且正确?std::ifstreamf("foo.txt");std::vectorlines;for(std::strings;std::getline(f,s);lines.push_back(std::mo

c++ - 如何在 GNU Autotools 项目中包含 Boost?

我的项目使用GNU自动工具编译(aclocal&&autoconf&&./configure&&make)。我想使用Boost,并且我希望其他人也能够编译它。我应该将Boost放在我的项目目录中,还是依赖于系统的Boost?我应该如何告诉autotools使用Boost?我用谷歌搜索并发现许多声称可以执行此操作的m4文件-但我应该将这些m4文件放在哪里?我可以将一个存储在我的/usr/share/aclocal目录中,但这对其他想要使用./configure&&make编译项目的人没有帮助。 最佳答案 TheArchive有AX_B

c++ - 如何使用 shell magic 使用 GNU etags 创建递归 etags?

标准的GNUetags不支持目录的递归遍历,就像exuberantctags-R所做的那样。如果我只能访问GNUetags,我如何使用bashshellmagic让etags为所有C++文件*.cpp和*.h生成一个TAGS表>当前目录和当前目录下的所有目录中的文件以递归方式在当前目录中创建一个TAGS表,该表具有emacs解析TAGS表条目的正确路径名。 最佳答案 EmacsWiki通常是常见问题或最佳实践答案的良好来源。对于您的具体问题,有适用于Windows和Unixen的解决方案:http://www.emacswiki.o

c++ - 尝试转换 str 字符串以用于 std::getline 定界符

我正在尝试获取std::string值并将其用作std::getline()函数中的分隔符但无论我做什么,编译器都会给我错误。这就是我想要做的:std::stringstreamss(s);std::stringitem;std::stringdelim="&&=";intssize=delim.size();intnewssize=ssize+1;chardel[SSIZE];//alsoherewhenitrygiveserrorstrcpy(del,delim.c_str());char*delrr[1024]=delim.c_str();//giveserrorwhile(st

c++ - 你推荐什么 GNU make 替代品?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。Improvethisquestion想象一下,您可以为新的C++项目自由选择GNUmake等工具。你会选择什么?有可用的替代品吗?它应该有/是命令行界面“容易”理解易于设置默认的c++项目可能支持src/bin分离,这在Java中很常见可能不会对其他软件/库添加太多依赖平台独立(新)特点:像make一样以人类可读的方式构建规则/模板递归爬行目录并在没有其他目录时应用规则“生成文件”异常配置注意:GNUm

c++ - 为什么 getline() 跳过输入,即使在 cin.clear() 之后?

所以我有一个函数可以不断跳过第一个getline并直接进入第二个。我尝试清除缓冲区,但仍然没有成功,这是怎么回事?voidgetData(char*strA,char*strB){cout 最佳答案 确保您没有使用cin>>str。在调用函数之前。如果你使用了cin>>str,然后想使用getline(cin,str),你必须先调用cin.ignore()。stringstr;cin>>str;cin.ignore();//ignores\nthatcin>>strhaslefted(ifuserpressedenterkey)ge

c++ - 如何在 C/C++ 程序中嵌入 GNU Octave?

我想使用GNUOctave库计算一些矩阵算法。我知道我可以使用Octave的C/C++API进行基本使用。但是我想使用的方法不在Octave的默认包中。那么如何使用Octave的controlpackage在C/C++程序中? 最佳答案 像这样嵌入.cpp#include#includeintmain(intargc,char*argv){  int embedded;  octave_main(argc,argv,embedded=0);    return embedded;}然后mkoctfileembed.cpp--link

c++ - 我对 getline+strings 有什么不了解的地方?

这是我第一次使用stackoverflow。我一直无法找到我需要的有关getline的信息。我在一个简单的工程转移编程类(class)中,所以我们编写的代码非常简单。我在这里要做的就是将用户定义数量的问题和答案放入两个不同的数组中。我的while循环看起来像这样(我正在使用for循环但切换到while只是为了看看它是否会停止中断):intmain(){srand((unsigned)time(0));stringquest1[100],answ1[100];intsize1,x=0,num,count1,visit[100],shuffle[100];fstreamflashcard1

c++ - 为什么我需要写 "std::string"而不是 "std::getline()"?

考虑这段代码:#include#includeintmain(){std::stringstr;std::cout为什么我必须对string、cin和cout使用std::而不是获取行()?getline()不在标准库中吗?我实际上有点困惑,为什么我不能只编写usingnamespacestd;而不必#include标准库中的任何内容。提前致谢! 最佳答案 神奇的自动命名空间限定。这是AndrewKoenig的*错误。他考虑了为用户定义类型提供运算符的问题。并提出了根据参数解析函数的想法。例如。对于在命名空间std中定义的类型参数,