digitalmars.D.learn - Read property using std.stream.Stream.read
Hi guys,
I'm trying to read a property of a class like:
class MyClass {
private ubyte pToRead;
property ubyte toRead() { return pToRead; }
}
...
File f = new File(...);
MyClass c = new MyClass();
f.read(c.toRead);
...
but when I compile my code, I always get:
executable.d(389): Error: function std.stream.Stream.read (ubyte[]
buffer) is not callable using argument types (ubyte)
executable.d(389): Error: cannot implicitly convert expression
(c.toRead()) of type ubyte to wchar[]
Aug 13 2011
== Auszug aus nrgyzer (nrgyzer gmail.com)'s Artikel
Hi guys,
I'm trying to read a property of a class like:
class MyClass {
private ubyte pToRead;
property ubyte toRead() { return pToRead; }
}
...
File f = new File(...);
MyClass c = new MyClass();
f.read(c.toRead);
...
but when I compile my code, I always get:
executable.d(389): Error: function std.stream.Stream.read (ubyte[]
buffer) is not callable using argument types (ubyte)
executable.d(389): Error: cannot implicitly convert expression
(c.toRead()) of type ubyte to wchar[]
Answering my own question ;D - I solved it by adding "ref" to my
property like:
property ref ubyte toRead() { return pToRead; }
Aug 13 2011








nrgyzer <nrgyzer gmail.com>