Форум программистов, компьютерный форум CyberForum.ru

Есть два перегруженныйх оператора *, но компилятор не может выбрать нужный, почему? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка по убыванию. Чтение из файла http://www.cyberforum.ru/cpp-beginners/thread614368.html
Помогите, пожалуйста, отсортировать содержимое файла.. Т.е. Имеется файл в 10 строк Popov.A.N. m 3.8 k Litvinov.A.S. m 3.4 i Fomin.G.E. m 4.5 k Chernov.A.A. m 4.8 k Korolenko.A.F. j 4.6 i Obama.E.N. j 5 n Krasnov.A.A. m 4.2 k Finora.T.N. j 4.4 i
C++ C++ Учебный курс 2-е издание (Паоло Франка) Купил книгу "C++ Учебный курс 2-е издание" (Паоло Франка). В интернете в электронном виде прочитал несколько страниц 1-го издания. Там всё основано на примерах с дискеты. Беда в том, что во 2-м издании (который я купил) те же примеры с той же дискеты, а дискета (диск) НЕ прилагается. Есть у кого-нибудь эта дискета? Или дайте ссылку, где её можно скачать. В инете не нашёл. Добавлено через 11... http://www.cyberforum.ru/cpp-beginners/thread614360.html
C++ Матрицы - перегрузка оператора *
Здравствуйте, помогите пожалуйста. Имеется библиотека Matrixclass.h, необходимо в ней перегрузить оператор умножения. Как только я не пытался его реализовать, но выводит не понять что. Посоветуйте что-нибудь по этому поводу. Matrixclass.h #include <iostream> #include <stdlib.h> #include <time.h> // Srand, Randomize #include <math.h>
C++ Методы и классы
добрый день) код выдает ошибку "E2089 Identifier 'proc' cannot have a type qualifier". не могу понять в чем проблема. int main() { class myclass { int num; public: void proc(); }; void myclass::proc() {
C++ Бинарное дерево (отладка) http://www.cyberforum.ru/cpp-beginners/thread614332.html
Прога работает и всё запускает (здесь фрагмент), но, к сожалению, выводит некие символы и т.д. Где что надо поправить? struct prod { char FI; int tnum,date,sum; };
C++ Мышь да Клава Помогите написать программу, котороя считает каждое нажатие на клавиатуру и мышь. подробнее

Показать сообщение отдельно
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
26.06.2012, 19:17     Есть два перегруженныйх оператора *, но компилятор не может выбрать нужный, почему?
Вот на такой, скопировал как есть:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class klass {
 public:
   klass() {}
   klass(int n) {}
   klass operator*(const klass &other){}                                     
 
   friend klass operator*(const int &chislo, klass &fr) {};   
    
   operator float () {};
};
 
int main () {
 klass h( 7 );
 klass h_( 5 );
 klass h__( h * h_ );
   
 return 0;
}
Добавлено через 3 минуты
Немного отформатировал пример, что бы было понятнее:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
class someClass {
   friend someClass operator*( const int , someClass & );
   
 public:
   someClass();
   someClass( int );
   
   someClass operator*( const someClass & );
   
   operator float ();
   
 private:
   int x;
};
 
someClass::someClass()
   : x( 0 )
{
   
}
 
someClass::someClass( int n )
   : x( n )
{
   
}
 
someClass someClass::operator*( someClass &other ) {
   
}
 
someClass operator*( const int number, someClass &fr ) {
   
}
 
someClass::operator float () {
   return .0;
}
 
int main () {
 someClass h( 7 );
 someClass h_( 5 );
 someClass h__( h * h_ );
   
 return 0;
}
 
Текущее время: 16:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru