функция вместо объекта ?
Язык: C++
Компилятор : G++
вопрос: Вызываеться метод класса " a.metod(); " Есть функция возврашающая значение char, " function() " Требуеться вызвать метод, а вместо объекта подставить " function(); " т.е. " function().metod(); " но так ругаеться компилятор: Код:
error: request for member `metod' in `function()', which is of non-class type `char'
function() не являеться членом класса.
Подскажите как решать "такое", что можно с этим сделать...
Заранее благодарен.
Простите, может я чего-то не понял, но, по-моему, это бред. Вы пытаетесь вызвать метод класса для переменной типа char?
Да я понимаю что так делать нельзя, ищу другие пути решения. Но передавать в функцию кучу объектов тоже не хочеться.
Может попробуешь привести кусок кода или псевдо-кода, как есть и как должно быть?
Нам нужно вызывать несколько функций для разных объектов класса. Т.е. Есть псевдо меню консольное со switch в нем есть например печать, ввод, ввод из файла, и некоторое количество операций с этим классом слияние, присваивание. Во всех этих операциях должен быть выбор с каким объектом класса действие производить. Например вызвали процедуру печать (есть функция спрашиваюшая у пользователя с каким объектом это делать, возврашаюшая значение char) которое я и хотел подставить вместо объекта.
сделай карту объектов -- char->твой_класс. пользователь вводит данные, с каким объектом производить действия, ты выбираешь соответствующий объект из карты и вызываешь у него соответствующий метод. а вместо карты, наверное, даже лучше использовать обычный массив, если у тебя конечно, объект будет выбираться по единственному char
[QUOTE=<SCORP>;191043]сделай карту объектов -- char->твой_класс. пользователь вводит данные, с каким объектом производить действия, ты выбираешь соответствующий объект из карты и вызываешь у него соответствующий метод. а вместо карты, наверное, даже лучше использовать обычный массив, если у тебя конечно, объект будет выбираться по единственному char[/QUOTE][br] Может быть это и вариант, только я не знаю как это сделать, можно пример? или по подробее или ссылку.
если я правильно понял, то по-моему тебе легче это офрмить при помощи обычного шаблона..