我有一个相当简单的问题。如何在Dart中使用来自不同类的变量?
paError = Pa_WriteStream(**&stream, sampleBlock, totalFrames);
if (paError != paNoError) {
cout << "PortAudio error : " << Pa_GetErrorText(paError) << endl;
std::system("pause");
}
答案 0 :(得分:1)
拥有自己的范围是面向对象编程中类的非常基本的特征,与OOP原理相对应。
还要注意,从代码中看,您似乎没有正确理解面向对象编程中的实例化概念,因为您尝试设置实例变量而不实例化类。我强烈建议您研究该主题以获取更多的了解。
话虽这么说,但绝对有很多方法可以实现您想要的。由于您的代码示例非常笼统,所以我不确定您要做什么,因此我将提供2个示例,这些示例可能会很有用:
您可以创建一个静态(类级别)成员,该成员对于所有对象都是相同的。
class ContainsVariable {
static var variable = 1;
}
class DoesNotContainVariable {
var useVariable = ContainsVariable.variable + 1; // here, you are using a
// static (class) variable,
// not an instance variable.
// That is why you are using
// the class name.
}
您可以实例化该类-通过创建该类的对象-并访问该对象的成员。请注意,这里没有没有静态语句。
class ContainsVariable {
var variable = 1;
}
class DoesNotContainVariable {
var instanceOfContainsVariable;
var useVariable;
DoesNotContainVariable(){ // this is a constructor function
var instanceOfContainsVariable = new ContainsVariable();
useVariable = instanceOfContainsVariable.variable + 1;
}
}