String and opBinary
Dmitry Olshansky
dmitry.olsh at gmail.com
Fri Jun 1 12:39:57 PDT 2012
On 01.06.2012 23:37, Zhenya wrote:
> This code work
>
> import std.stdio;
>
> struct String
> {
> string data;
> alias data this;
> this(string s)
> {
> data = s;
> }
> String opBinary(string op : "*")(string word)
> {
> string temp;
> foreach(letter; word)
> {
> temp ~= data;
> }
> return String(temp);
> }
> };
>
> string opBinary(string op : "*")(string data, string word)
> {
> string temp;
> foreach(letter; word)
> {
> temp ~= data;
> }
> return temp;
> }
>
> void main()
> {
> String word = "foo";
> String secretword = String("_") * word;
Define proper opBinaryRight and this will work too:
String secretword = "_" * word;
> //string secretword = "_".opBinary!"*"(word); // compile
> writeln(secretword); // output : ___
> }
>
>
--
Dmitry Olshansky
More information about the Digitalmars-d-learn
mailing list