using two operators in same line 
October 20th, 2006, 07:05 PM
| | | |
Hello programmers,
I am trying to write a class which has a two operators # and <=, so
that I can do something like this.
...
Array mArray;
.....
#4 mArray <= 5; //is this possible to have for # operator to have
nothing on LHS, I can get <= operator work, mArray <=5, but can't think
of anyway to combined both operator togeather! can return refrence to
Array in <= operator to do something like (4# mArray <= 5) to work.
Idealy I like to have #4 mArray <= 5;
but I can live with some other versions, 4# mArray <= 5 or (mArray <=
5) #4 (really not prefer this!)
Any suggestions, comments, help?
class defination for Array
class Array
{
public:
Array();
~Array():
operator<= (const int inIndex) {mIndex = inIndex;}
friend ?? operotor# (const Array& in Array)
private:
int mIndex;
}; | 
October 20th, 2006, 07:05 PM
| | | | re: using two operators in same line
sorry, also forgot one more important point,
how can I have a higher precedence set for <= operator. Assignments
should always evaluate <= first and after that #)
thanks ankitks@yahoo.com wrote: Quote:
Hello programmers,
I am trying to write a class which has a two operators # and <=, so
that I can do something like this.
..
Array mArray;
....
#4 mArray <= 5; //is this possible to have for # operator to have
nothing on LHS, I can get <= operator work, mArray <=5, but can't think
of anyway to combined both operator togeather! can return refrence to
Array in <= operator to do something like (4# mArray <= 5) to work.
>
Idealy I like to have #4 mArray <= 5;
but I can live with some other versions, 4# mArray <= 5 or (mArray <=
5) #4 (really not prefer this!)
>
Any suggestions, comments, help?
>
class defination for Array
class Array
{
public:
Array();
~Array():
operator<= (const int inIndex) {mIndex = inIndex;}
friend ?? operotor# (const Array& in Array)
private:
int mIndex;
};
| | 
October 20th, 2006, 07:05 PM
| | | | re: using two operators in same line ankitks@yahoo.com wrote: Quote:
Hello programmers,
I am trying to write a class which has a two operators # and <=, so
that I can do something like this.
..
Array mArray;
....
#4 mArray <= 5; //is this possible to have for # operator to have
nothing on LHS, I can get <= operator work, mArray <=5, but can't think
of anyway to combined both operator togeather! can return refrence to
Array in <= operator to do something like (4# mArray <= 5) to work.
>
Idealy I like to have #4 mArray <= 5;
but I can live with some other versions, 4# mArray <= 5 or (mArray <=
5) #4 (really not prefer this!)
>
Any suggestions, comments, help?
>
class defination for Array
class Array
{
public:
Array();
~Array():
operator<= (const int inIndex) {mIndex = inIndex;}
friend ?? operotor# (const Array& in Array)
private:
int mIndex;
};
>
|
First of all, you *can't* define operator#. There is no such operator.
Given that, you're toast anyways. | 
October 20th, 2006, 07:15 PM
| | | | re: using two operators in same line
thanks, good to know, how about using then ^ or @
red floyd wrote: Quote: ankitks@yahoo.com wrote: Quote:
Hello programmers,
I am trying to write a class which has a two operators # and <=, so
that I can do something like this.
..
Array mArray;
....
#4 mArray <= 5; //is this possible to have for # operator to have
nothing on LHS, I can get <= operator work, mArray <=5, but can't think
of anyway to combined both operator togeather! can return refrence to
Array in <= operator to do something like (4# mArray <= 5) to work.
Idealy I like to have #4 mArray <= 5;
but I can live with some other versions, 4# mArray <= 5 or (mArray <=
5) #4 (really not prefer this!)
Any suggestions, comments, help?
class defination for Array
class Array
{
public:
Array();
~Array():
operator<= (const int inIndex) {mIndex = inIndex;}
friend ?? operotor# (const Array& in Array)
private:
int mIndex;
};
| >
>
First of all, you *can't* define operator#. There is no such operator.
Given that, you're toast anyways.
| | 
October 20th, 2006, 07:55 PM
| | | | re: using two operators in same line ankitks@yahoo.com wrote: Quote:
red floyd wrote: Quote: ankitks@yahoo.com wrote: Quote: |
I am trying to write a class which has a two operators # and <=, so
| | | [snips, and top posting corrected] Quote: Quote:
First of all, you *can't* define operator#. There is no such operator.
Given that, you're toast anyways.
| thanks, good to know, how about using then ^ or @
| Well, what would operator # do if it did exist? What are you
trying to get from it?
Um. I don't think there's an operator @, is there?
Socks | 
October 20th, 2006, 08:05 PM
| | | | re: using two operators in same line
Puppet_Sock wrote: Quote:
Um. I don't think there's an operator @, is there?
Socks
>
| @ and $ do not exist in the C++ syntax anywhere
(outside of char/string literals). | 
October 20th, 2006, 08:05 PM
| | | | re: using two operators in same line
if operator # exit, I like to do something
operator# (const int inCount) {mIndex = mIndex * inCount;}
this is just example.
Puppet_Sock wrote: Quote: ankitks@yahoo.com wrote: Quote:
red floyd wrote: Quote: ankitks@yahoo.com wrote:
I am trying to write a class which has a two operators # and <=, so
| | >
[snips, and top posting corrected]
> Quote: Quote:
First of all, you *can't* define operator#. There is no such operator.
Given that, you're toast anyways.
| thanks, good to know, how about using then ^ or @
| >
Well, what would operator # do if it did exist? What are you
trying to get from it?
>
Um. I don't think there's an operator @, is there?
Socks
| | 
October 20th, 2006, 08:15 PM
| | | | re: using two operators in same line ankitks@yahoo.com schrieb: Quote:
Hello programmers,
I am trying to write a class which has a two operators # and <=, so
that I can do something like this.
..
Array mArray;
....
#4 mArray <= 5; //is this possible to have for # operator to have
nothing on LHS, I can get <= operator work, mArray <=5, but can't think
of anyway to combined both operator togeather! can return refrence to
Array in <= operator to do something like (4# mArray <= 5) to work.
| [...]
There is no # operator, and I doubt that your <= operator is an "lesser
equal" operator. Don't confuse other compilers by changing the meaning of
operators.
Read the FAQ on operator overloading: http://www.parashift.com/c++-faq-lit...erloading.html
--
Thomas http://www.netmeister.org/news/learn2quote.html | 
October 20th, 2006, 08:35 PM
| | | | re: using two operators in same line ankitks@yahoo.com wrote: Quote:
sorry, also forgot one more important point,
how can I have a higher precedence set for <= operator. Assignments
should always evaluate <= first and after that #)
| You can not change the precedence (or associativity) of operators. This
is why it is not recommened to overload operator^ to do exponentiation,
for example; see: http://www.parashift.com/c++-faq-lit....html#faq-13.7
--
Marcus Kwok
Replace 'invalid' with 'net' to reply | 
October 20th, 2006, 09:05 PM
| | | | re: using two operators in same line ankitks@yahoo.com wrote: Quote:
if operator # exit, I like to do something
>
operator# (const int inCount) {mIndex = mIndex * inCount;}
>
this is just example.
| Operator overloading is for doing things with your own types that are
logically similar to what the same operator would do with built-in types.
It is supposed to help you extend the langage, not change it into a
different one. Since there is no operator# for built-in types, there is
nothing useful it could do and so you can't define your own either.
You can overload operator^, but only as a binary operator (i.e. having two
arguments, one on the left and one on the right side). It's supposed to do
a bitwise exclusive or of the two arguments. | 
October 20th, 2006, 10:45 PM
| | | | re: using two operators in same line
In article <1161368250.987108.85010@f16g2000cwb.googlegroups. com>, ankitks@yahoo.com wrote: Quote:
Hello programmers,
I am trying to write a class which has a two operators # and <=, so
that I can do something like this.
| You cannot invent operators, all you can do is implement the operators
that already exist.
--
There are two things that simply cannot be doubted, logic and perception.
Doubt those, and you no longer*have anyone to discuss your doubts with,
nor any ability to discuss them. |  | | | | /bytes/about
We are a network of experts and professionals in IT and software development that help one another with answers to tough questions and share insights.
Get the best answers to your questions from over 225,689 network members.
|