如何传递对象或对函数的引用?
How to pass an object or reference to a function?
我想在以下方面寻求帮助..
如何传递对象或函数引用?
#include <Encoder.h>
// Default Encoder class
Encoder mainEncoder( 2, 3 );
// My class
class MyClass {
private:
Encoder *Enc;
int value;
public:
MyClass( Encoder *Enc, int value ) {
Enc->write( value );
}
int read() {
return Enc->read();
}
}
// Create..
MyClass Encoder( &mainEncoder, 50 );
// Loop...
int encoderOut = Encoder.read();
这种方式根本行不通
代码不初始化 MyClass::Enc
(也不 value
)。
修复:
MyClass( Encoder *Enc, int value )
: Enc(Enc) // <---- initialize Enc.
{
Enc->write(value);
}
我想在以下方面寻求帮助.. 如何传递对象或函数引用?
#include <Encoder.h>
// Default Encoder class
Encoder mainEncoder( 2, 3 );
// My class
class MyClass {
private:
Encoder *Enc;
int value;
public:
MyClass( Encoder *Enc, int value ) {
Enc->write( value );
}
int read() {
return Enc->read();
}
}
// Create..
MyClass Encoder( &mainEncoder, 50 );
// Loop...
int encoderOut = Encoder.read();
这种方式根本行不通
代码不初始化 MyClass::Enc
(也不 value
)。
修复:
MyClass( Encoder *Enc, int value )
: Enc(Enc) // <---- initialize Enc.
{
Enc->write(value);
}