Connecting Tech Pros Worldwide Help | Site Map

using two operators in same line

  #1  
Old October 20th, 2006, 07:05 PM
ankitks@yahoo.com
Guest
 
Posts: n/a
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;
};

  #2  
Old October 20th, 2006, 07:05 PM
ankitks@yahoo.com
Guest
 
Posts: n/a

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;
};
  #3  
Old October 20th, 2006, 07:05 PM
red floyd
Guest
 
Posts: n/a

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.
  #4  
Old October 20th, 2006, 07:15 PM
ankitks@yahoo.com
Guest
 
Posts: n/a

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.
  #5  
Old October 20th, 2006, 07:55 PM
Puppet_Sock
Guest
 
Posts: n/a

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

  #6  
Old October 20th, 2006, 08:05 PM
Ron Natalie
Guest
 
Posts: n/a

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).

  #7  
Old October 20th, 2006, 08:05 PM
ankitks@yahoo.com
Guest
 
Posts: n/a

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
  #8  
Old October 20th, 2006, 08:15 PM
Thomas J. Gritzan
Guest
 
Posts: n/a

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
  #9  
Old October 20th, 2006, 08:35 PM
Marcus Kwok
Guest
 
Posts: n/a

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
  #10  
Old October 20th, 2006, 09:05 PM
Rolf Magnus
Guest
 
Posts: n/a

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.

  #11  
Old October 20th, 2006, 10:45 PM
Daniel T.
Guest
 
Posts: n/a

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.
Closed Thread


Similar Threads
Thread Thread Starter Forum Replies Last Post
Very Basic String Operators!! autodidact answers 3 September 8th, 2007 03:29 PM
C Newb Killer - Bitwise operators shdwsclan answers 3 April 24th, 2007 03:08 PM
Two questions...first, outputting strings from a datafile, and string addition... snow.carriers@gmail.com answers 3 March 2nd, 2006 04:15 PM
Templates, friends, operators .. what more do we need to have fun? Micha answers 11 September 29th, 2005 01:15 PM