我是新来的C++编程,我需要你的帮助:C++我要像做Class1.Class2.Fct()
比方说,我有一个类 - Class1的。是否有可能有(至少)一个函数返回(例如)一个整数的另一个类(Class2)?下面是我想才达到一个例子:
std::cout << "I did it: " << Class1.Class2.ReturnINTEGER() << std::endl;
我需要的代码以与GNU G ++编译器兼容。谢谢 :)。
我是新来的C++编程,我需要你的帮助:C++我要像做Class1.Class2.Fct()
比方说,我有一个类 - Class1的。是否有可能有(至少)一个函数返回(例如)一个整数的另一个类(Class2)?下面是我想才达到一个例子:
std::cout << "I did it: " << Class1.Class2.ReturnINTEGER() << std::endl;
我需要的代码以与GNU G ++编译器兼容。谢谢 :)。
是的,它可以做到。让我们剖析或重建。 首先得到Class1.Class2
,我们需要有一个类成员叫Class2
。而Class2
需要有一个名为Fct
的成员。
这是一个实现:
struct Class2_Object
{
void Fct(void);
};
struct Class1_Object
{
Class2_Object Class2;
};
Class1_Object Class1;
Class1.Class2.Fct();
这一个帮助 - 非常感谢:)) –
请不要使用'void'来指定不应该传递给'Fct'的参数,这是完全没有必要的。 – Rakete1111
@ Rakete1111:虽然在C++ *中是不必要的*,但它是允许的,并且可以从C语言中结转。目前我正在用两种语言进行编程,但在不同的项目上。 –
#include <iostream>
using namespace std;
class Two
{
public:
int toReturn;
Two()
{
toReturn=0;
}
int returnValue()
{
return toReturn;
}
};
class One
{
public:
Two foo;
};
int main()
{
One bar;
int toPrint=bar.foo.returnValue();
cout << toPrint << endl;
}
好吧 - 我试图解决错误 - 在这里: –
#include
我认为你需要一个[本好书(http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list )让你开始如何做到这一点。 – Rakete1111
您不会在'.'之前放置类名,而是将类型为类的变量。 – Barmar
'.'从类中的成员名称中分离变量(或返回结构或类对象的其他表达式)。 – Barmar