草庐IT

typedef-name

全部标签

c++ - 不清楚的 typedef 类型

我看到这段代码,想知道它是什么意思。但即使看了大约15分钟,我还是看不懂。templatestructVector4{typedefTVector4::*constvec[4];staticconstvecconstVec;//justtohavesomememberinstancesofTTmember1,member2,member3,member4;};那么constVec的类型是什么?请不要只是重复typedef,而是用通用语言解释。到目前为止我的笔记:为什么有两种类型(T和Vector4),这是函数指针吗?::*是什么意思?从Vector4的范围中获取所有内容?它是一个常量指

c++ - 对 self 的 typedef 有什么影响吗?

我遇到过一些具有以下内容的C++代码:typedefRequestRequest;这只是空操作还是这个typedef实际有影响,如果有,它有什么影响? 最佳答案 您可以在第7.1.3节中阅读与C++2003ANSIISOIEC148822003的typedef说明符相关的所有规则。在7.1.3中,2)据说如果名称已经引用某种类型,则允许标识typedef。这是合法的:typedefintRequest;typedefRequestRequest;//Redefines"Request"withnoeffect它不是:typedefR

解决在idea上连接linux开启的redis服务失败Failed to connect to any host resolved for DNS name.(史上最强+最细解决方案)

今天在idea上连接reids服务器时出现错误FailedtoconnecttoanyhostresolvedforDNSname.那么我们来一步一步来进行如下步骤。首先找到自己的redis.conf文件,可以使用这个搜索按钮直接搜索redis.conf文件(因为不同人的redis.conf文件可能不一样)找到该文件后我们需要修改如下几个地方。(1)、daemonizeyes大概在136行(2)、protected-modeno大概在88行(3)、注释掉bind127.0.0.1大概在69行这里需要注意的是注释的不是上面的而是箭头所指的地方。修改完成后我们wq保存退出。下面是打开端口6379(

c++ - 什么是 typedef int var[1];做?

我遇到过以下代码:typedefintvar[1];//orvar[3]它到底有什么作用?我不明白下标添加了什么,因为现在我可以为int定义“var” 最佳答案 typedef声明使用与普通变量声明相同的语法。不同之处在于,不是声明“一个名为x的y变量”,而是声明“一个名为x的类型,它是输入y。”语法在其他方面相同。那么,让我们从您的示例中删除typedef,看看我们得到了什么:intvar[1];var是一个类型为int[1]的变量,或者说,一个int的数组。如果我们将typedef添加回去:typedefintvar[1];这使

C++ 错误 : Type Name is Not Allowed

我正在尝试学习指针参数中的新类(class),我想让函数senior和everyoneElse接受指针x,但是当我尝试使用指针pAge调用函数时,它显示错误:类型名称是不允许的。怎么了?#includeintsenior(int*x);inteveryoneElse(int*x);usingnamespacestd;intmain(){intage(0);int*pAge(&age);cout>age;if(age>59)senior(int*pAge);elseeveryoneElse(int*pAge);return0;}intsenior(int*x){return*x;}int

c++ - 使用 typedef 声明函数有什么意义?

我有点困惑为什么我可以使用typedef来声明函数。这是我的例子:intAdd(inta,intb){returna+b;}intMult(inta,intb){returna*b;}typedefintfunc(int,int);intmain(intargc,char*argv[]){funcAdd;coutintfuncAdd;我可以直接调用Add()上面有什么意义?谁能解释一下我应该对函数使用typedef的场景? 最佳答案 首先,这个typedef在这里完全没用。但如果Add()就有意义了将在另一个编译单元中定义。主要好处

c++ - 在 C++ 中传递变量 "name"

我目前仅使用以下模板来检查NULL指针,如果为NULL,则将错误消息打印到日志文件,然后返回false。templatestaticboolisnull(T*t,std::stringname=""){_ASSERTE(t!=0);if(!t){if(!(name.length()))name="pointer";PANTHEIOS_TRACE_ERROR(name+"isNULL");returnfalse;}returntrue;}我目前这样调用它:if(!(isnull(dim,BOOST_STRINGIZE(dim))))returnfalse;如果您注意到我需要将要打印到日志

c++ - 匿名 namespace 内部/外部的 Typedef?

在.cpp文件中,这两种方式有什么区别/偏好吗?//filescopeoutsideanynamespaceusingX::SomeClass;typedefSomeClass::BufferMyBuf;速度/速度namespace{//anonymoususingX::SomeClass;typedefSomeClass::BufferMyBuf;} 最佳答案 我会说第二种用法相当不常见,至少在我目前看到的代码中是这样(而且我已经看到相当多的C++代码)。您能解释一下第二种技术背后的原因吗?您通常会在C++实现文件中使用匿名命名空

c++ - typedef 具有所有默认参数的模板

我声明了一个模板类,所有参数都具有默认参数,例如:templateclassFoo{};那么下面两个是等价的:Fooone;Footwo;但是,我不能这样做:Foothree;是否可以使用相同名称但没有括号的typedef来实现这一点,如下所示:typedefFooFoo; 最佳答案 我做了类似下面的事情,不知道你喜不喜欢:templateclassbasic_Foo{};typedefbasic_FooFoo; 关于c++-typedef具有所有默认参数的模板,我们在StackOver

c++ - C++ 中正确的 typedef 位置

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion请问typedef在C++中的正确​​位置版本1:类外类型定义typedefstd::pairStrIntPair;typedefstd::vectorStrIntPairVec;classMyData{public:MyData(){};~MyData(){};private:voidaddInfo(constStrIntPair&info){infoVec.push_back(info