草庐IT

Main-Class

全部标签

c++ - 在 main 之前调用的预定义函数

我不明白如何以及何时调用此预定义函数sqrt(),如果我定义自己的函数sqrt()也是如此>它显示了一个编译错误,所以为什么预定义函数调用有效而对用户定义函数的调用失败,尽管这两个代码都位于我的可执行文件的(TEXT)部分。#includeintx=sqrt(16);intmain(){printf("x=%d\n",x);return0;}输出:x=4;当我调用我定义的sqrt()函数时出现以下错误,但当我使用预定义函数时不会出现相同的错误错误:初始化元素不是常量 最佳答案 如果您定义自己的sqrt函数,它将与math.h中已经定

c++ - 奇怪的编译器错误 : "undefined reference to ' main'"

谁能告诉我这是什么意思?/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5.2/../../../crt1.o:Infunction`_start':(.text+0x18):undefinedreferenceto`main'collect2:ldreturned1exitstatusmake:***[program]Error1我的make文件如下所示:program:main.orender.oscreenwriter.og++-omain.orender.oscreenwriter.o-lSDLmain.o:main.cpprender

c++ - 如何在 main() 完成后调用 C++ 函数

我正在开发一个应该对主程序透明运行的C++工具。即:如果用户简单地将工具链接到他的程序,该工具将被激活。为此,我需要调用两个函数,函数a(),在main()获得控制之前,函数b()在之后main()完成。我可以通过在我的程序中声明一个全局变量并通过a()的返回代码对其进行初始化来轻松完成第一个操作。即intv=a();但是我找不到在main()完成后调用b()的方法?有没有人能想到一种方法来做到这一点?该工具在Windows上运行,但我不想使用任何特定于操作系统的调用。谢谢你,乔治 最佳答案 使用RAII,在构造函数/析构函数中调用

c++ - `void f1(const Class &c)` 和 `void f2(Class const &c)` 有什么区别?

下面这些函数有什么区别(看关键字const)?voidf1(constClass&c)和voidf2(Classconst&c) 最佳答案 没有区别。这两个版本可以互换。 关于c++-`voidf1(constClass&c)`和`voidf2(Classconst&c)`有什么区别?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7576223/

c++ - 为什么我的 C++ 编译器允许递归调用 main?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Isitlegaltorecurseintomain()inC++?#includeusingnamespacestd;intmain(){staticintvar=5;std::coutgcc编译代码http://ideone.com/lIp3A.我知道main不能在C++的main内部使用。这段代码如何编译?

c++ - 子类如何使用与子类相同的方法名调用父类(super class)的方法?

#includeusingnamespacestd;classPerson{public:voidsing();};classChild:publicPerson{public:voidsing();};Person::sing(){cout 最佳答案 suzie.Person::sing(); 关于c++-子类如何使用与子类相同的方法名调用父类(superclass)的方法?,我们在StackOverflow上找到一个类似的问题: https://stack

c++ - 如何解决 "class must be used when declaring a friend"错误?

classtwo;classone{inta;public:one(){a=8;}friendtwo;};classtwo{public:two(){}two(onei){cout我从Dev-C++收到此错误:aclass-keymustbeusedwhendeclaringafriend但是用MicrosoftVisualC++编译器编译时它运行良好。 最佳答案 你需要friendclasstwo;代替friendtwo;此外,您不需要单独转发声明您的类,因为友元声明本身就是一个声明。你甚至可以这样做://noforward-de

c++ - 为什么我们在从 main() 返回时遵循相反的约定?

我已经经历了this和this,但我在这里要问的问题是,为什么0被认为是Success?我们总是将0与false联系起来,不是吗? 最佳答案 因为失败的案例比成功的案例多。通常,我们成功的原因只有一个(因为我们成功了:)),但失败的原因有很多。所以0表示成功,其他一切都表示失败,并且该值可以用来报告原因。对于代码中的函数,这是不同的,因为您是指定接口(interface)的人,因此如果足够的话,可以只使用bool。对于main,有一个固定的返回接口(interface),可能有程序只报告成功/失败,但其他程序需要更精细的错误报告。为

c++ - 为什么写 func( const Class &value ) 更可取?

为什么要使用func(constClass&value)而不仅仅是func(Classvalue)?现代编译器肯定会使用任何一种语法来做最有效的事情。这是否仍然是必要的,或者只是对非优化编译器时代的保留?补充一下,gcc将为这两种语法生成类似的汇编代码输出。也许其他编译器没有?显然,事实并非如此。我很久以前从一些代码中得到的印象是gcc这样做了,但是实验证明这是错误的。感谢MichaelBurr,他对similarquestion的回答如果在这里给出,将被提名。 最佳答案 2个签名之间有2个较大的语义差异。首先是在类型名称中使用&。

C++ 错误 : request for member '...' in 'grmanager' which is of non-class type 'GraphicsManager'

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭10年前。我的类GraphicsManager出现错误。图形管理器.cpp:#include"C:\Users\ChrisUzzolina\Desktop\obj\include\GraphicsManager.h"#include#includeGraphicsManager::GraphicsManager(intSCREEN_WIDTH,intSCREEN_