草庐IT

counter_name

全部标签

c++ - syntax::function_name 在 C++ 中是什么意思?

在名为::foo()的函数中,我不明白语法的用途。如果它是foo::count_all()那么我知道count_all是类或命名空间foo的函数。在::foo()的情况下,::引用的是什么? 最佳答案 ::运算符正在调用namespace或class。在您的情况下,它正在调用全局命名空间,它是不在命名空间中的所有内容。下面的例子说明了为什么namespace很重要。如果您只是调用foo(),您的调用将无法解析,因为有2个foo。您需要使用::foo()解决全局问题。namespaceHidden{intfoo();}intfoo()

C++ 编译错误枚举 "does not name a type"

以下代码:foo.h#include"bar.h"classfoo{public:enummy_enum_type{ONE,TWO,THREE};foo();~foo(){}};foo.cppfoo::foo(){inti=bar::MY_DEFINE;}酒吧.h#include"foo.h"classbar{public:staticconstintMY_DEFINE=10;foo::my_enum_typevar;bar(){};~bar(){};};让g++编译器提示my_enum_type“没有命名类型”。为什么?所有header都有多个包含定义(为清楚起见,此处未显示)。谢谢

C++ : Read a file name from the command line and utilize it in my file

如何从命令行读取文件名并在我的C++代码文件中使用它?例如:./cppfileinputFilenameoutputFilename非常感谢任何帮助! 最佳答案 intmain(intargc,char**argv){stringinFile="";stringoutFile="";if(argc==3){inFile=argv[1];outFile=argv[2];}else{cout 关于C++:Readafilenamefromthecommandlineandutilizeiti

c++ - Bison and doesn't name 类型错误

我有以下文件:CP.h#ifndefCP_H_#defineCP_H_classCP{public:enumCardinalite{VIDE='\0',PTINT='?',AST='*',PLUS='+'};CP(CardinalitemyCard);virtual~CP();private:Cardinalitecard;};#endif/*CP_H_*/和dtd.y%{usingnamespacestd;#include#include#include#include"AnalyseurDTD/DtdDocument.h"#include"AnalyseurDTD/CP.h"voi

C++ 函数名称分解 : What does this name suffix mean?

当我反汇编Chromium二进制文件时,我注意到有一些函数以这种模式命名:_ZN6webrtc15DecoderDatabase11DecoderInfoD2Ev.part.1如果我把这个字符串给c++filt,输出是webrtc::DecoderDatabase::DecoderInfo::~DecoderInfo()[克隆.part.1]那么这个.part.1后缀的真正含义是什么?如果它表明同一个函数有多个拷贝,他们为什么需要那个?是因为位置独立的要求吗?我使用g++作为编译器。 最佳答案 它表示析构函数是partialinli

c++ - getline(cin.name) 被跳过

我从C++中的一个函数调用一个函数,该函数具有getline(cin,name)行,其中name是一个字符串。第一次通过循环时,程序不等待输入。它将通过循环的所有其他传递。有什么想法吗?voidgetName(string&name){intnameLen;do{cout 最佳答案 确保自上次从cin读取内容后没有遗漏,例如:在你的程序的前面一点:intnumber;cin>>number;您提供的输入:5程序后面:getline(cin,name);和getline似乎不会被调用,而是它收集了您上次输入时的换行符,因为当您使用ci

C++ __COUNTER__ 定义

我的电脑上安装了两个版本的C++编译器。其中一个可以识别__COUNTER__宏,而另一个则不能。在做了一些研究以使程序在两者中编译之后,我还没有遇到__COUNTER__的宏定义。这是编译器完成的一些特殊宏,还是我可以将__COUNTER__的定义复制到我的源代码中,如果我可以复制它,我需要什么代码。 最佳答案 __COUNTER__是几个常见编译器中的内置项。无法手动定义。如果您遇到不支持它的编译器,最好的选择可能是在将代码送入编译器之前通过支持它的预处理器运行您的代码。 关于C++

行为类似于 __COUNTER__ 宏的 C++ 结构

这个问题在这里已经有了答案:DoesC++supportcompile-timecounters?(11个答案)关闭6年前。我有一组C++类,每个类都必须声明一个唯一的顺序ID作为编译时常量。为此,我使用了__COUNTER__内置宏,它转换为一个整数,每次出现它都会递增。id不需要遵循严格的顺序。唯一的要求是它们是顺序的并且从0开始:classA{public:enum{id=__COUNTER__};};classB{public:enum{id=__COUNTER__};};//etcetera...我的问题是:有没有办法使用C++构造(例如模板)实现相同的结果?

c++ - '简历' : a namespace with this name does not exist while building (VS 2015, OpenCV 3.2)

在VS2015中构建一个简单的OpenCV应用程序时出现错误'cv':anamespacewiththisnamedoesnotexistwhilebuilding虽然我相信我已经完成了为VS配置OpenCV所需的所有步骤(使用本文作为引用http://opencv-srf.blogspot.com/2013/05/installing-configuring-opencv-with-vs.html)类(class)的开始很简单#include"opencv2/imgcodecs.hpp"#include"opencv2/highgui.hpp"#include"opencv2/sti

c++ - 可重复使用的预处理器 __COUNTER__

我正在做一些模板元编程,大部分只是编写我自己的编译时间列表,但我也有一些预处理器魔法,如果可能的话,我想用它来使事情变得更容易。我想做的是创建仿函数的编译时列表。该部分已完成,但用于简化创建(并添加到列表)的宏尚未完成。一个简单的例子:templatestructnode{typedefFunctorhead;typedefTailtail;};templatestructpush_back{typedefnodelist;};structunit0{};#defineAUTO_FUNCTION(name)structtest_functor_##name{\staticvoidrun